We announced the upcoming end-of-support for AWS SDK for JavaScript v2.
We recommend that you migrate to AWS SDK for JavaScript v3. For dates, additional details, and information on how to migrate, please refer to the linked announcement.

Class: AWS.Pinpoint

Inherits:
AWS.Service show all
Identifier:
pinpoint
API Version:
2016-12-01
Defined in:
(unknown)

Overview

Constructs a service interface object. Each API operation is exposed as a function on service.

Service Description

Doc Engage API - Amazon Pinpoint API

Sending a Request Using Pinpoint

var pinpoint = new AWS.Pinpoint();
pinpoint.createApp(params, function (err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Locking the API Version

In order to ensure that the Pinpoint object uses this specific API, you can construct the object by passing the apiVersion option to the constructor:

var pinpoint = new AWS.Pinpoint({apiVersion: '2016-12-01'});

You can also set the API version globally in AWS.config.apiVersions using the pinpoint service identifier:

AWS.config.apiVersions = {
  pinpoint: '2016-12-01',
  // other service API versions
};

var pinpoint = new AWS.Pinpoint();

Version:

  • 2016-12-01

Constructor Summary collapse

Property Summary collapse

Properties inherited from AWS.Service

apiVersions

Method Summary collapse

Methods inherited from AWS.Service

makeRequest, makeUnauthenticatedRequest, waitFor, setupRequestListeners, defineService

Constructor Details

new AWS.Pinpoint(options = {}) ⇒ Object

Constructs a service object. This object has one method for each API operation.

Examples:

Constructing a Pinpoint object

var pinpoint = new AWS.Pinpoint({apiVersion: '2016-12-01'});

Options Hash (options):

  • params (map)

    An optional map of parameters to bind to every request sent by this service object. For more information on bound parameters, see "Working with Services" in the Getting Started Guide.

  • endpoint (String|AWS.Endpoint)

    The endpoint URI to send requests to. The default endpoint is built from the configured region. The endpoint should be a string like 'https://{service}.{region}.amazonaws.com' or an Endpoint object.

  • accessKeyId (String)

    your AWS access key ID.

  • secretAccessKey (String)

    your AWS secret access key.

  • sessionToken (AWS.Credentials)

    the optional AWS session token to sign requests with.

  • credentials (AWS.Credentials)

    the AWS credentials to sign requests with. You can either specify this object, or specify the accessKeyId and secretAccessKey options directly.

  • credentialProvider (AWS.CredentialProviderChain)

    the provider chain used to resolve credentials if no static credentials property is set.

  • region (String)

    the region to send service requests to. See AWS.Pinpoint.region for more information.

  • maxRetries (Integer)

    the maximum amount of retries to attempt with a request. See AWS.Pinpoint.maxRetries for more information.

  • maxRedirects (Integer)

    the maximum amount of redirects to follow with a request. See AWS.Pinpoint.maxRedirects for more information.

  • sslEnabled (Boolean)

    whether to enable SSL for requests.

  • paramValidation (Boolean|map)

    whether input parameters should be validated against the operation description before sending the request. Defaults to true. Pass a map to enable any of the following specific validation features:

    • min [Boolean] — Validates that a value meets the min constraint. This is enabled by default when paramValidation is set to true.
    • max [Boolean] — Validates that a value meets the max constraint.
    • pattern [Boolean] — Validates that a string value matches a regular expression.
    • enum [Boolean] — Validates that a string value matches one of the allowable enum values.
  • computeChecksums (Boolean)

    whether to compute checksums for payload bodies when the service accepts it (currently supported in S3 only)

  • convertResponseTypes (Boolean)

    whether types are converted when parsing response data. Currently only supported for JSON based services. Turning this off may improve performance on large response payloads. Defaults to true.

  • correctClockSkew (Boolean)

    whether to apply a clock skew correction and retry requests that fail because of an skewed client clock. Defaults to false.

  • s3ForcePathStyle (Boolean)

    whether to force path style URLs for S3 objects.

  • s3BucketEndpoint (Boolean)

    whether the provided endpoint addresses an individual bucket (false if it addresses the root API endpoint). Note that setting this configuration option requires an endpoint to be provided explicitly to the service constructor.

  • s3DisableBodySigning (Boolean)

    whether S3 body signing should be disabled when using signature version v4. Body signing can only be disabled when using https. Defaults to true.

  • s3UsEast1RegionalEndpoint ('legacy'|'regional')

    when region is set to 'us-east-1', whether to send s3 request to global endpoints or 'us-east-1' regional endpoints. This config is only applicable to S3 client. Defaults to legacy

  • s3UseArnRegion (Boolean)

    whether to override the request region with the region inferred from requested resource's ARN. Only available for S3 buckets Defaults to true

  • retryDelayOptions (map)

    A set of options to configure the retry delay on retryable errors. Currently supported options are:

    • base [Integer] — The base number of milliseconds to use in the exponential backoff for operation retries. Defaults to 100 ms for all services except DynamoDB, where it defaults to 50ms.
    • customBackoff [function] — A custom function that accepts a retry count and error and returns the amount of time to delay in milliseconds. If the result is a non-zero negative value, no further retry attempts will be made. The base option will be ignored if this option is supplied. The function is only called for retryable errors.
  • httpOptions (map)

    A set of options to pass to the low-level HTTP request. Currently supported options are:

    • proxy [String] — the URL to proxy requests through
    • agent [http.Agent, https.Agent] — the Agent object to perform HTTP requests with. Used for connection pooling. Defaults to the global agent (http.globalAgent) for non-SSL connections. Note that for SSL connections, a special Agent object is used in order to enable peer certificate verification. This feature is only available in the Node.js environment.
    • connectTimeout [Integer] — Sets the socket to timeout after failing to establish a connection with the server after connectTimeout milliseconds. This timeout has no effect once a socket connection has been established.
    • timeout [Integer] — Sets the socket to timeout after timeout milliseconds of inactivity on the socket. Defaults to two minutes (120000).
    • xhrAsync [Boolean] — Whether the SDK will send asynchronous HTTP requests. Used in the browser environment only. Set to false to send requests synchronously. Defaults to true (async on).
    • xhrWithCredentials [Boolean] — Sets the "withCredentials" property of an XMLHttpRequest object. Used in the browser environment only. Defaults to false.
  • apiVersion (String, Date)

    a String in YYYY-MM-DD format (or a date) that represents the latest possible API version that can be used in all services (unless overridden by apiVersions). Specify 'latest' to use the latest possible version.

  • apiVersions (map<String, String|Date>)

    a map of service identifiers (the lowercase service class name) with the API version to use when instantiating a service. Specify 'latest' for each individual that can use the latest available version.

  • logger (#write, #log)

    an object that responds to .write() (like a stream) or .log() (like the console object) in order to log information about requests

  • systemClockOffset (Number)

    an offset value in milliseconds to apply to all signing times. Use this to compensate for clock skew when your system may be out of sync with the service time. Note that this configuration option can only be applied to the global AWS.config object and cannot be overridden in service-specific configuration. Defaults to 0 milliseconds.

  • signatureVersion (String)

    the signature version to sign requests with (overriding the API configuration). Possible values are: 'v2', 'v3', 'v4'.

  • signatureCache (Boolean)

    whether the signature to sign requests with (overriding the API configuration) is cached. Only applies to the signature version 'v4'. Defaults to true.

  • dynamoDbCrc32 (Boolean)

    whether to validate the CRC32 checksum of HTTP response bodies returned by DynamoDB. Default: true.

  • useAccelerateEndpoint (Boolean)

    Whether to use the S3 Transfer Acceleration endpoint with the S3 service. Default: false.

  • clientSideMonitoring (Boolean)

    whether to collect and publish this client's performance metrics of all its API requests.

  • endpointDiscoveryEnabled (Boolean|undefined)

    whether to call operations with endpoints given by service dynamically. Setting this

  • endpointCacheSize (Number)

    the size of the global cache storing endpoints from endpoint discovery operations. Once endpoint cache is created, updating this setting cannot change existing cache size. Defaults to 1000

  • hostPrefixEnabled (Boolean)

    whether to marshal request parameters to the prefix of hostname. Defaults to true.

  • stsRegionalEndpoints ('legacy'|'regional')

    whether to send sts request to global endpoints or regional endpoints. Defaults to 'legacy'.

  • useFipsEndpoint (Boolean)

    Enables FIPS compatible endpoints. Defaults to false.

  • useDualstackEndpoint (Boolean)

    Enables IPv6 dualstack endpoint. Defaults to false.

Property Details

endpointAWS.Endpoint (readwrite)

Returns an Endpoint object representing the endpoint URL for service requests.

Returns:

  • (AWS.Endpoint)

    an Endpoint object representing the endpoint URL for service requests.

Method Details

createApp(params = {}, callback) ⇒ AWS.Request

Creates an application.

Service Reference:

Examples:

Calling the createApp operation

var params = {
  CreateApplicationRequest: { /* required */
    Name: 'STRING_VALUE', /* required */
    tags: {
      '<__string>': 'STRING_VALUE',
      /* '<__string>': ... */
    }
  }
};
pinpoint.createApp(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • CreateApplicationRequest — (map)

      Specifies the display name of an application and the tags to associate with the application.

      • Namerequired — (String)

        The display name of the application. This name is displayed as the Project name on the Amazon Pinpoint console.

      • tags — (map<String>)

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

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • ApplicationResponse — (map)

        Provides information about an application.

        • Arnrequired — (String)

          The Amazon Resource Name (ARN) of the application.

        • Idrequired — (String)

          The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

        • Namerequired — (String)

          The display name of the application. This name is displayed as the Project name on the Amazon Pinpoint console.

        • tags — (map<String>)

          A string-to-string map of key-value pairs that identifies the tags that are associated with the application. Each tag consists of a required tag key and an associated tag value.

        • CreationDate — (String)

          The date and time when the Application was created.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

createCampaign(params = {}, callback) ⇒ AWS.Request

Creates a new campaign for an application or updates the settings of an existing campaign for an application.

Service Reference:

Examples:

Calling the createCampaign operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  WriteCampaignRequest: { /* required */
    AdditionalTreatments: [
      {
        SizePercent: 'NUMBER_VALUE', /* required */
        CustomDeliveryConfiguration: {
          DeliveryUri: 'STRING_VALUE', /* required */
          EndpointTypes: [
            PUSH | GCM | APNS | APNS_SANDBOX | APNS_VOIP | APNS_VOIP_SANDBOX | ADM | SMS | VOICE | EMAIL | BAIDU | CUSTOM | IN_APP,
            /* more items */
          ]
        },
        MessageConfiguration: {
          ADMMessage: {
            Action: OPEN_APP | DEEP_LINK | URL,
            Body: 'STRING_VALUE',
            ImageIconUrl: 'STRING_VALUE',
            ImageSmallIconUrl: 'STRING_VALUE',
            ImageUrl: 'STRING_VALUE',
            JsonBody: 'STRING_VALUE',
            MediaUrl: 'STRING_VALUE',
            RawContent: 'STRING_VALUE',
            SilentPush: true || false,
            TimeToLive: 'NUMBER_VALUE',
            Title: 'STRING_VALUE',
            Url: 'STRING_VALUE'
          },
          APNSMessage: {
            Action: OPEN_APP | DEEP_LINK | URL,
            Body: 'STRING_VALUE',
            ImageIconUrl: 'STRING_VALUE',
            ImageSmallIconUrl: 'STRING_VALUE',
            ImageUrl: 'STRING_VALUE',
            JsonBody: 'STRING_VALUE',
            MediaUrl: 'STRING_VALUE',
            RawContent: 'STRING_VALUE',
            SilentPush: true || false,
            TimeToLive: 'NUMBER_VALUE',
            Title: 'STRING_VALUE',
            Url: 'STRING_VALUE'
          },
          BaiduMessage: {
            Action: OPEN_APP | DEEP_LINK | URL,
            Body: 'STRING_VALUE',
            ImageIconUrl: 'STRING_VALUE',
            ImageSmallIconUrl: 'STRING_VALUE',
            ImageUrl: 'STRING_VALUE',
            JsonBody: 'STRING_VALUE',
            MediaUrl: 'STRING_VALUE',
            RawContent: 'STRING_VALUE',
            SilentPush: true || false,
            TimeToLive: 'NUMBER_VALUE',
            Title: 'STRING_VALUE',
            Url: 'STRING_VALUE'
          },
          CustomMessage: {
            Data: 'STRING_VALUE'
          },
          DefaultMessage: {
            Action: OPEN_APP | DEEP_LINK | URL,
            Body: 'STRING_VALUE',
            ImageIconUrl: 'STRING_VALUE',
            ImageSmallIconUrl: 'STRING_VALUE',
            ImageUrl: 'STRING_VALUE',
            JsonBody: 'STRING_VALUE',
            MediaUrl: 'STRING_VALUE',
            RawContent: 'STRING_VALUE',
            SilentPush: true || false,
            TimeToLive: 'NUMBER_VALUE',
            Title: 'STRING_VALUE',
            Url: 'STRING_VALUE'
          },
          EmailMessage: {
            Body: 'STRING_VALUE',
            FromAddress: 'STRING_VALUE',
            Headers: [
              {
                Name: 'STRING_VALUE',
                Value: 'STRING_VALUE'
              },
              /* more items */
            ],
            HtmlBody: 'STRING_VALUE',
            Title: 'STRING_VALUE'
          },
          GCMMessage: {
            Action: OPEN_APP | DEEP_LINK | URL,
            Body: 'STRING_VALUE',
            ImageIconUrl: 'STRING_VALUE',
            ImageSmallIconUrl: 'STRING_VALUE',
            ImageUrl: 'STRING_VALUE',
            JsonBody: 'STRING_VALUE',
            MediaUrl: 'STRING_VALUE',
            RawContent: 'STRING_VALUE',
            SilentPush: true || false,
            TimeToLive: 'NUMBER_VALUE',
            Title: 'STRING_VALUE',
            Url: 'STRING_VALUE'
          },
          InAppMessage: {
            Body: 'STRING_VALUE',
            Content: [
              {
                BackgroundColor: 'STRING_VALUE',
                BodyConfig: {
                  Alignment: LEFT | CENTER | RIGHT, /* required */
                  Body: 'STRING_VALUE', /* required */
                  TextColor: 'STRING_VALUE' /* required */
                },
                HeaderConfig: {
                  Alignment: LEFT | CENTER | RIGHT, /* required */
                  Header: 'STRING_VALUE', /* required */
                  TextColor: 'STRING_VALUE' /* required */
                },
                ImageUrl: 'STRING_VALUE',
                PrimaryBtn: {
                  Android: {
                    ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
                    Link: 'STRING_VALUE'
                  },
                  DefaultConfig: {
                    ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
                    Text: 'STRING_VALUE', /* required */
                    BackgroundColor: 'STRING_VALUE',
                    BorderRadius: 'NUMBER_VALUE',
                    Link: 'STRING_VALUE',
                    TextColor: 'STRING_VALUE'
                  },
                  IOS: {
                    ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
                    Link: 'STRING_VALUE'
                  },
                  Web: {
                    ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
                    Link: 'STRING_VALUE'
                  }
                },
                SecondaryBtn: {
                  Android: {
                    ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
                    Link: 'STRING_VALUE'
                  },
                  DefaultConfig: {
                    ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
                    Text: 'STRING_VALUE', /* required */
                    BackgroundColor: 'STRING_VALUE',
                    BorderRadius: 'NUMBER_VALUE',
                    Link: 'STRING_VALUE',
                    TextColor: 'STRING_VALUE'
                  },
                  IOS: {
                    ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
                    Link: 'STRING_VALUE'
                  },
                  Web: {
                    ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
                    Link: 'STRING_VALUE'
                  }
                }
              },
              /* more items */
            ],
            CustomConfig: {
              '<__string>': 'STRING_VALUE',
              /* '<__string>': ... */
            },
            Layout: BOTTOM_BANNER | TOP_BANNER | OVERLAYS | MOBILE_FEED | MIDDLE_BANNER | CAROUSEL
          },
          SMSMessage: {
            Body: 'STRING_VALUE',
            EntityId: 'STRING_VALUE',
            MessageType: TRANSACTIONAL | PROMOTIONAL,
            OriginationNumber: 'STRING_VALUE',
            SenderId: 'STRING_VALUE',
            TemplateId: 'STRING_VALUE'
          }
        },
        Schedule: {
          StartTime: 'STRING_VALUE', /* required */
          EndTime: 'STRING_VALUE',
          EventFilter: {
            Dimensions: { /* required */
              Attributes: {
                '<__string>': {
                  Values: [ /* required */
                    'STRING_VALUE',
                    /* more items */
                  ],
                  AttributeType: INCLUSIVE | EXCLUSIVE | CONTAINS | BEFORE | AFTER | ON | BETWEEN
                },
                /* '<__string>': ... */
              },
              EventType: {
                Values: [ /* required */
                  'STRING_VALUE',
                  /* more items */
                ],
                DimensionType: INCLUSIVE | EXCLUSIVE
              },
              Metrics: {
                '<__string>': {
                  ComparisonOperator: 'STRING_VALUE', /* required */
                  Value: 'NUMBER_VALUE' /* required */
                },
                /* '<__string>': ... */
              }
            },
            FilterType: SYSTEM | ENDPOINT /* required */
          },
          Frequency: ONCE | HOURLY | DAILY | WEEKLY | MONTHLY | EVENT | IN_APP_EVENT,
          IsLocalTime: true || false,
          QuietTime: {
            End: 'STRING_VALUE',
            Start: 'STRING_VALUE'
          },
          Timezone: 'STRING_VALUE'
        },
        TemplateConfiguration: {
          EmailTemplate: {
            Name: 'STRING_VALUE',
            Version: 'STRING_VALUE'
          },
          InAppTemplate: {
            Name: 'STRING_VALUE',
            Version: 'STRING_VALUE'
          },
          PushTemplate: {
            Name: 'STRING_VALUE',
            Version: 'STRING_VALUE'
          },
          SMSTemplate: {
            Name: 'STRING_VALUE',
            Version: 'STRING_VALUE'
          },
          VoiceTemplate: {
            Name: 'STRING_VALUE',
            Version: 'STRING_VALUE'
          }
        },
        TreatmentDescription: 'STRING_VALUE',
        TreatmentName: 'STRING_VALUE'
      },
      /* more items */
    ],
    CustomDeliveryConfiguration: {
      DeliveryUri: 'STRING_VALUE', /* required */
      EndpointTypes: [
        PUSH | GCM | APNS | APNS_SANDBOX | APNS_VOIP | APNS_VOIP_SANDBOX | ADM | SMS | VOICE | EMAIL | BAIDU | CUSTOM | IN_APP,
        /* more items */
      ]
    },
    Description: 'STRING_VALUE',
    HoldoutPercent: 'NUMBER_VALUE',
    Hook: {
      LambdaFunctionName: 'STRING_VALUE',
      Mode: DELIVERY | FILTER,
      WebUrl: 'STRING_VALUE'
    },
    IsPaused: true || false,
    Limits: {
      Daily: 'NUMBER_VALUE',
      MaximumDuration: 'NUMBER_VALUE',
      MessagesPerSecond: 'NUMBER_VALUE',
      Session: 'NUMBER_VALUE',
      Total: 'NUMBER_VALUE'
    },
    MessageConfiguration: {
      ADMMessage: {
        Action: OPEN_APP | DEEP_LINK | URL,
        Body: 'STRING_VALUE',
        ImageIconUrl: 'STRING_VALUE',
        ImageSmallIconUrl: 'STRING_VALUE',
        ImageUrl: 'STRING_VALUE',
        JsonBody: 'STRING_VALUE',
        MediaUrl: 'STRING_VALUE',
        RawContent: 'STRING_VALUE',
        SilentPush: true || false,
        TimeToLive: 'NUMBER_VALUE',
        Title: 'STRING_VALUE',
        Url: 'STRING_VALUE'
      },
      APNSMessage: {
        Action: OPEN_APP | DEEP_LINK | URL,
        Body: 'STRING_VALUE',
        ImageIconUrl: 'STRING_VALUE',
        ImageSmallIconUrl: 'STRING_VALUE',
        ImageUrl: 'STRING_VALUE',
        JsonBody: 'STRING_VALUE',
        MediaUrl: 'STRING_VALUE',
        RawContent: 'STRING_VALUE',
        SilentPush: true || false,
        TimeToLive: 'NUMBER_VALUE',
        Title: 'STRING_VALUE',
        Url: 'STRING_VALUE'
      },
      BaiduMessage: {
        Action: OPEN_APP | DEEP_LINK | URL,
        Body: 'STRING_VALUE',
        ImageIconUrl: 'STRING_VALUE',
        ImageSmallIconUrl: 'STRING_VALUE',
        ImageUrl: 'STRING_VALUE',
        JsonBody: 'STRING_VALUE',
        MediaUrl: 'STRING_VALUE',
        RawContent: 'STRING_VALUE',
        SilentPush: true || false,
        TimeToLive: 'NUMBER_VALUE',
        Title: 'STRING_VALUE',
        Url: 'STRING_VALUE'
      },
      CustomMessage: {
        Data: 'STRING_VALUE'
      },
      DefaultMessage: {
        Action: OPEN_APP | DEEP_LINK | URL,
        Body: 'STRING_VALUE',
        ImageIconUrl: 'STRING_VALUE',
        ImageSmallIconUrl: 'STRING_VALUE',
        ImageUrl: 'STRING_VALUE',
        JsonBody: 'STRING_VALUE',
        MediaUrl: 'STRING_VALUE',
        RawContent: 'STRING_VALUE',
        SilentPush: true || false,
        TimeToLive: 'NUMBER_VALUE',
        Title: 'STRING_VALUE',
        Url: 'STRING_VALUE'
      },
      EmailMessage: {
        Body: 'STRING_VALUE',
        FromAddress: 'STRING_VALUE',
        Headers: [
          {
            Name: 'STRING_VALUE',
            Value: 'STRING_VALUE'
          },
          /* more items */
        ],
        HtmlBody: 'STRING_VALUE',
        Title: 'STRING_VALUE'
      },
      GCMMessage: {
        Action: OPEN_APP | DEEP_LINK | URL,
        Body: 'STRING_VALUE',
        ImageIconUrl: 'STRING_VALUE',
        ImageSmallIconUrl: 'STRING_VALUE',
        ImageUrl: 'STRING_VALUE',
        JsonBody: 'STRING_VALUE',
        MediaUrl: 'STRING_VALUE',
        RawContent: 'STRING_VALUE',
        SilentPush: true || false,
        TimeToLive: 'NUMBER_VALUE',
        Title: 'STRING_VALUE',
        Url: 'STRING_VALUE'
      },
      InAppMessage: {
        Body: 'STRING_VALUE',
        Content: [
          {
            BackgroundColor: 'STRING_VALUE',
            BodyConfig: {
              Alignment: LEFT | CENTER | RIGHT, /* required */
              Body: 'STRING_VALUE', /* required */
              TextColor: 'STRING_VALUE' /* required */
            },
            HeaderConfig: {
              Alignment: LEFT | CENTER | RIGHT, /* required */
              Header: 'STRING_VALUE', /* required */
              TextColor: 'STRING_VALUE' /* required */
            },
            ImageUrl: 'STRING_VALUE',
            PrimaryBtn: {
              Android: {
                ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
                Link: 'STRING_VALUE'
              },
              DefaultConfig: {
                ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
                Text: 'STRING_VALUE', /* required */
                BackgroundColor: 'STRING_VALUE',
                BorderRadius: 'NUMBER_VALUE',
                Link: 'STRING_VALUE',
                TextColor: 'STRING_VALUE'
              },
              IOS: {
                ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
                Link: 'STRING_VALUE'
              },
              Web: {
                ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
                Link: 'STRING_VALUE'
              }
            },
            SecondaryBtn: {
              Android: {
                ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
                Link: 'STRING_VALUE'
              },
              DefaultConfig: {
                ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
                Text: 'STRING_VALUE', /* required */
                BackgroundColor: 'STRING_VALUE',
                BorderRadius: 'NUMBER_VALUE',
                Link: 'STRING_VALUE',
                TextColor: 'STRING_VALUE'
              },
              IOS: {
                ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
                Link: 'STRING_VALUE'
              },
              Web: {
                ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
                Link: 'STRING_VALUE'
              }
            }
          },
          /* more items */
        ],
        CustomConfig: {
          '<__string>': 'STRING_VALUE',
          /* '<__string>': ... */
        },
        Layout: BOTTOM_BANNER | TOP_BANNER | OVERLAYS | MOBILE_FEED | MIDDLE_BANNER | CAROUSEL
      },
      SMSMessage: {
        Body: 'STRING_VALUE',
        EntityId: 'STRING_VALUE',
        MessageType: TRANSACTIONAL | PROMOTIONAL,
        OriginationNumber: 'STRING_VALUE',
        SenderId: 'STRING_VALUE',
        TemplateId: 'STRING_VALUE'
      }
    },
    Name: 'STRING_VALUE',
    Priority: 'NUMBER_VALUE',
    Schedule: {
      StartTime: 'STRING_VALUE', /* required */
      EndTime: 'STRING_VALUE',
      EventFilter: {
        Dimensions: { /* required */
          Attributes: {
            '<__string>': {
              Values: [ /* required */
                'STRING_VALUE',
                /* more items */
              ],
              AttributeType: INCLUSIVE | EXCLUSIVE | CONTAINS | BEFORE | AFTER | ON | BETWEEN
            },
            /* '<__string>': ... */
          },
          EventType: {
            Values: [ /* required */
              'STRING_VALUE',
              /* more items */
            ],
            DimensionType: INCLUSIVE | EXCLUSIVE
          },
          Metrics: {
            '<__string>': {
              ComparisonOperator: 'STRING_VALUE', /* required */
              Value: 'NUMBER_VALUE' /* required */
            },
            /* '<__string>': ... */
          }
        },
        FilterType: SYSTEM | ENDPOINT /* required */
      },
      Frequency: ONCE | HOURLY | DAILY | WEEKLY | MONTHLY | EVENT | IN_APP_EVENT,
      IsLocalTime: true || false,
      QuietTime: {
        End: 'STRING_VALUE',
        Start: 'STRING_VALUE'
      },
      Timezone: 'STRING_VALUE'
    },
    SegmentId: 'STRING_VALUE',
    SegmentVersion: 'NUMBER_VALUE',
    TemplateConfiguration: {
      EmailTemplate: {
        Name: 'STRING_VALUE',
        Version: 'STRING_VALUE'
      },
      InAppTemplate: {
        Name: 'STRING_VALUE',
        Version: 'STRING_VALUE'
      },
      PushTemplate: {
        Name: 'STRING_VALUE',
        Version: 'STRING_VALUE'
      },
      SMSTemplate: {
        Name: 'STRING_VALUE',
        Version: 'STRING_VALUE'
      },
      VoiceTemplate: {
        Name: 'STRING_VALUE',
        Version: 'STRING_VALUE'
      }
    },
    TreatmentDescription: 'STRING_VALUE',
    TreatmentName: 'STRING_VALUE',
    tags: {
      '<__string>': 'STRING_VALUE',
      /* '<__string>': ... */
    }
  }
};
pinpoint.createCampaign(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • WriteCampaignRequest — (map)

      Specifies the configuration and other settings for a campaign.

      • AdditionalTreatments — (Array<map>)

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

        • CustomDeliveryConfiguration — (map)

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

          • DeliveryUrirequired — (String)

            The destination to send the campaign or treatment to. This value can be one of the following:

            • The name or Amazon Resource Name (ARN) of an AWS Lambda function to invoke to handle delivery of the campaign or treatment.

            • The URL for a web application or service that supports HTTPS and can receive the message. The URL has to be a full URL, including the HTTPS protocol.

          • EndpointTypes — (Array<String>)

            The types of endpoints to send the campaign or treatment to. Each valid value maps to a type of channel that you can associate with an endpoint by using the ChannelType property of an endpoint.

        • MessageConfiguration — (map)

          The message configuration settings for the treatment.

          • ADMMessage — (map)

            The message that the campaign sends through the ADM (Amazon Device Messaging) channel. If specified, this message overrides the default message.

            • Action — (String)

              The action to occur if a recipient taps the push notification. Valid values are:

              • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

              • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

              • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

              Possible values include:
              • "OPEN_APP"
              • "DEEP_LINK"
              • "URL"
            • Body — (String)

              The body of the notification message. The maximum number of characters is 200.

            • ImageIconUrl — (String)

              The URL of the image to display as the push-notification icon, such as the icon for the app.

            • ImageSmallIconUrl — (String)

              The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

            • ImageUrl — (String)

              The URL of an image to display in the push notification.

            • JsonBody — (String)

              The JSON payload to use for a silent push notification.

            • MediaUrl — (String)

              The URL of the image or video to display in the push notification.

            • RawContent — (String)

              The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

            • SilentPush — (Boolean)

              Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

            • TimeToLive — (Integer)

              The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

              This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

            • Title — (String)

              The title to display above the notification message on a recipient's device.

            • Url — (String)

              The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

          • APNSMessage — (map)

            The message that the campaign sends through the APNs (Apple Push Notification service) channel. If specified, this message overrides the default message.

            • Action — (String)

              The action to occur if a recipient taps the push notification. Valid values are:

              • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

              • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

              • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

              Possible values include:
              • "OPEN_APP"
              • "DEEP_LINK"
              • "URL"
            • Body — (String)

              The body of the notification message. The maximum number of characters is 200.

            • ImageIconUrl — (String)

              The URL of the image to display as the push-notification icon, such as the icon for the app.

            • ImageSmallIconUrl — (String)

              The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

            • ImageUrl — (String)

              The URL of an image to display in the push notification.

            • JsonBody — (String)

              The JSON payload to use for a silent push notification.

            • MediaUrl — (String)

              The URL of the image or video to display in the push notification.

            • RawContent — (String)

              The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

            • SilentPush — (Boolean)

              Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

            • TimeToLive — (Integer)

              The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

              This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

            • Title — (String)

              The title to display above the notification message on a recipient's device.

            • Url — (String)

              The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

          • BaiduMessage — (map)

            The message that the campaign sends through the Baidu (Baidu Cloud Push) channel. If specified, this message overrides the default message.

            • Action — (String)

              The action to occur if a recipient taps the push notification. Valid values are:

              • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

              • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

              • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

              Possible values include:
              • "OPEN_APP"
              • "DEEP_LINK"
              • "URL"
            • Body — (String)

              The body of the notification message. The maximum number of characters is 200.

            • ImageIconUrl — (String)

              The URL of the image to display as the push-notification icon, such as the icon for the app.

            • ImageSmallIconUrl — (String)

              The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

            • ImageUrl — (String)

              The URL of an image to display in the push notification.

            • JsonBody — (String)

              The JSON payload to use for a silent push notification.

            • MediaUrl — (String)

              The URL of the image or video to display in the push notification.

            • RawContent — (String)

              The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

            • SilentPush — (Boolean)

              Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

            • TimeToLive — (Integer)

              The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

              This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

            • Title — (String)

              The title to display above the notification message on a recipient's device.

            • Url — (String)

              The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

          • CustomMessage — (map)

            The message that the campaign sends through a custom channel, as specified by the delivery configuration (CustomDeliveryConfiguration) settings for the campaign. If specified, this message overrides the default message.

            • Data — (String)

              The raw, JSON-formatted string to use as the payload for the message. The maximum size is 5 KB.

          • DefaultMessage — (map)

            The default message that the campaign sends through all the channels that are configured for the campaign.

            • Action — (String)

              The action to occur if a recipient taps the push notification. Valid values are:

              • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

              • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

              • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

              Possible values include:
              • "OPEN_APP"
              • "DEEP_LINK"
              • "URL"
            • Body — (String)

              The body of the notification message. The maximum number of characters is 200.

            • ImageIconUrl — (String)

              The URL of the image to display as the push-notification icon, such as the icon for the app.

            • ImageSmallIconUrl — (String)

              The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

            • ImageUrl — (String)

              The URL of an image to display in the push notification.

            • JsonBody — (String)

              The JSON payload to use for a silent push notification.

            • MediaUrl — (String)

              The URL of the image or video to display in the push notification.

            • RawContent — (String)

              The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

            • SilentPush — (Boolean)

              Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

            • TimeToLive — (Integer)

              The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

              This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

            • Title — (String)

              The title to display above the notification message on a recipient's device.

            • Url — (String)

              The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

          • EmailMessage — (map)

            The message that the campaign sends through the email channel. If specified, this message overrides the default message.

            • Body — (String)

              The body of the email for recipients whose email clients don't render HTML content.

            • FromAddress — (String)

              The verified email address to send the email from. The default address is the FromAddress specified for the email channel for the application.

            • Headers — (Array<map>)

              The list of MessageHeaders for the email. You can have up to 15 MessageHeaders for each email.

              • Name — (String)

                The name of the message header. The header name can contain up to 126 characters.

              • Value — (String)

                The value of the message header. The header value can contain up to 870 characters, including the length of any rendered attributes. For example if you add the {CreationDate} attribute, it renders as YYYY-MM-DDTHH:MM:SS.SSSZ and is 24 characters in length.

            • HtmlBody — (String)

              The body of the email, in HTML format, for recipients whose email clients render HTML content.

            • Title — (String)

              The subject line, or title, of the email.

          • GCMMessage — (map)

            The message that the campaign sends through the GCM channel, which enables Amazon Pinpoint to send push notifications through the Firebase Cloud Messaging (FCM), formerly Google Cloud Messaging (GCM), service. If specified, this message overrides the default message.

            • Action — (String)

              The action to occur if a recipient taps the push notification. Valid values are:

              • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

              • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

              • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

              Possible values include:
              • "OPEN_APP"
              • "DEEP_LINK"
              • "URL"
            • Body — (String)

              The body of the notification message. The maximum number of characters is 200.

            • ImageIconUrl — (String)

              The URL of the image to display as the push-notification icon, such as the icon for the app.

            • ImageSmallIconUrl — (String)

              The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

            • ImageUrl — (String)

              The URL of an image to display in the push notification.

            • JsonBody — (String)

              The JSON payload to use for a silent push notification.

            • MediaUrl — (String)

              The URL of the image or video to display in the push notification.

            • RawContent — (String)

              The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

            • SilentPush — (Boolean)

              Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

            • TimeToLive — (Integer)

              The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

              This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

            • Title — (String)

              The title to display above the notification message on a recipient's device.

            • Url — (String)

              The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

          • SMSMessage — (map)

            The message that the campaign sends through the SMS channel. If specified, this message overrides the default message.

            • Body — (String)

              The body of the SMS message.

            • MessageType — (String)

              The SMS message type. Valid values are TRANSACTIONAL (for messages that are critical or time-sensitive, such as a one-time passwords) and PROMOTIONAL (for messsages that aren't critical or time-sensitive, such as marketing messages).

              Possible values include:
              • "TRANSACTIONAL"
              • "PROMOTIONAL"
            • OriginationNumber — (String)

              The long code to send the SMS message from. This value should be one of the dedicated long codes that's assigned to your AWS account. Although it isn't required, we recommend that you specify the long code using an E.164 format to ensure prompt and accurate delivery of the message. For example, +12065550100.

            • SenderId — (String)

              The sender ID to display on recipients' devices when they receive the SMS message.

            • EntityId — (String)

              The entity ID or Principal Entity (PE) id received from the regulatory body for sending SMS in your country.

            • TemplateId — (String)

              The template ID received from the regulatory body for sending SMS in your country.

          • InAppMessage — (map)

            The in-app message configuration.

            • Body — (String)

              The message body of the notification, the email body or the text message.

            • Content — (Array<map>)

              In-app message content.

              • BackgroundColor — (String)

                The background color for the message.

              • BodyConfig — (map)

                The configuration for the message body.

                • Alignmentrequired — (String)

                  The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

                  Possible values include:
                  • "LEFT"
                  • "CENTER"
                  • "RIGHT"
                • Bodyrequired — (String)

                  Message Body.

                • TextColorrequired — (String)

                  The text color.

              • HeaderConfig — (map)

                The configuration for the message header.

                • Alignmentrequired — (String)

                  The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

                  Possible values include:
                  • "LEFT"
                  • "CENTER"
                  • "RIGHT"
                • Headerrequired — (String)

                  Message Header.

                • TextColorrequired — (String)

                  The text color.

              • ImageUrl — (String)

                The image url for the background of message.

              • PrimaryBtn — (map)

                The first button inside the message.

                • Android — (map)

                  Default button content.

                  • ButtonActionrequired — (String)

                    Action triggered by the button.

                    Possible values include:
                    • "LINK"
                    • "DEEP_LINK"
                    • "CLOSE"
                  • Link — (String)

                    Button destination.

                • DefaultConfig — (map)

                  Default button content.

                  • BackgroundColor — (String)

                    The background color of the button.

                  • BorderRadius — (Integer)

                    The border radius of the button.

                  • ButtonActionrequired — (String)

                    Action triggered by the button.

                    Possible values include:
                    • "LINK"
                    • "DEEP_LINK"
                    • "CLOSE"
                  • Link — (String)

                    Button destination.

                  • Textrequired — (String)

                    Button text.

                  • TextColor — (String)

                    The text color of the button.

                • IOS — (map)

                  Default button content.

                  • ButtonActionrequired — (String)

                    Action triggered by the button.

                    Possible values include:
                    • "LINK"
                    • "DEEP_LINK"
                    • "CLOSE"
                  • Link — (String)

                    Button destination.

                • Web — (map)

                  Default button content.

                  • ButtonActionrequired — (String)

                    Action triggered by the button.

                    Possible values include:
                    • "LINK"
                    • "DEEP_LINK"
                    • "CLOSE"
                  • Link — (String)

                    Button destination.

              • SecondaryBtn — (map)

                The second button inside message.

                • Android — (map)

                  Default button content.

                  • ButtonActionrequired — (String)

                    Action triggered by the button.

                    Possible values include:
                    • "LINK"
                    • "DEEP_LINK"
                    • "CLOSE"
                  • Link — (String)

                    Button destination.

                • DefaultConfig — (map)

                  Default button content.

                  • BackgroundColor — (String)

                    The background color of the button.

                  • BorderRadius — (Integer)

                    The border radius of the button.

                  • ButtonActionrequired — (String)

                    Action triggered by the button.

                    Possible values include:
                    • "LINK"
                    • "DEEP_LINK"
                    • "CLOSE"
                  • Link — (String)

                    Button destination.

                  • Textrequired — (String)

                    Button text.

                  • TextColor — (String)

                    The text color of the button.

                • IOS — (map)

                  Default button content.

                  • ButtonActionrequired — (String)

                    Action triggered by the button.

                    Possible values include:
                    • "LINK"
                    • "DEEP_LINK"
                    • "CLOSE"
                  • Link — (String)

                    Button destination.

                • Web — (map)

                  Default button content.

                  • ButtonActionrequired — (String)

                    Action triggered by the button.

                    Possible values include:
                    • "LINK"
                    • "DEEP_LINK"
                    • "CLOSE"
                  • Link — (String)

                    Button destination.

            • CustomConfig — (map<String>)

              Custom config to be sent to client.

            • Layout — (String)

              In-app message layout.

              Possible values include:
              • "BOTTOM_BANNER"
              • "TOP_BANNER"
              • "OVERLAYS"
              • "MOBILE_FEED"
              • "MIDDLE_BANNER"
              • "CAROUSEL"
        • Schedule — (map)

          The schedule settings for the treatment.

          • EndTime — (String)

            The scheduled time, in ISO 8601 format, when the campaign ended or will end.

          • EventFilter — (map)

            The type of event that causes the campaign to be sent, if the value of the Frequency property is EVENT.

            • Dimensionsrequired — (map)

              The dimension settings of the event filter for the campaign.

              • Attributes — (map<map>)

                One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                • AttributeType — (String)

                  The type of segment dimension to use. Valid values are:

                  • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                  • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                  • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                  • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                  • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                  • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                  • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                  • Possible values include:
                    • "INCLUSIVE"
                    • "EXCLUSIVE"
                    • "CONTAINS"
                    • "BEFORE"
                    • "AFTER"
                    • "ON"
                    • "BETWEEN"
                  • Valuesrequired — (Array<String>)

                    The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                • EventType — (map)

                  The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                  • DimensionType — (String)

                    The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                    Possible values include:
                    • "INCLUSIVE"
                    • "EXCLUSIVE"
                  • Valuesrequired — (Array<String>)

                    The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                • Metrics — (map<map>)

                  One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                  • ComparisonOperatorrequired — (String)

                    The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                  • Valuerequired — (Float)

                    The value to compare.

              • FilterTyperequired — (String)

                The type of event that causes the campaign to be sent. Valid values are: SYSTEM, sends the campaign when a system event occurs; and, ENDPOINT, sends the campaign when an endpoint event (Events resource) occurs.

                Possible values include:
                • "SYSTEM"
                • "ENDPOINT"
            • Frequency — (String)

              Specifies how often the campaign is sent or whether the campaign is sent in response to a specific event.

              Possible values include:
              • "ONCE"
              • "HOURLY"
              • "DAILY"
              • "WEEKLY"
              • "MONTHLY"
              • "EVENT"
              • "IN_APP_EVENT"
            • IsLocalTime — (Boolean)

              Specifies whether the start and end times for the campaign schedule use each recipient's local time. To base the schedule on each recipient's local time, set this value to true.

            • QuietTime — (map)

              The default quiet time for the campaign. Quiet time is a specific time range when a campaign doesn't send messages to endpoints, if all the following conditions are met:

              • The EndpointDemographic.Timezone property of the endpoint is set to a valid value.

              • The current time in the endpoint's time zone is later than or equal to the time specified by the QuietTime.Start property for the campaign.

              • The current time in the endpoint's time zone is earlier than or equal to the time specified by the QuietTime.End property for the campaign.

              If any of the preceding conditions isn't met, the endpoint will receive messages from the campaign, even if quiet time is enabled.

              • End — (String)

                The specific time when quiet time ends. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

              • Start — (String)

                The specific time when quiet time begins. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

            • StartTimerequired — (String)

              The scheduled time when the campaign began or will begin. Valid values are: IMMEDIATE, to start the campaign immediately; or, a specific time in ISO 8601 format.

            • Timezone — (String)

              The starting UTC offset for the campaign schedule, if the value of the IsLocalTime property is true. Valid values are: UTC, UTC+01, UTC+02, UTC+03, UTC+03:30, UTC+04, UTC+04:30, UTC+05, UTC+05:30, UTC+05:45, UTC+06, UTC+06:30, UTC+07, UTC+08, UTC+09, UTC+09:30, UTC+10, UTC+10:30, UTC+11, UTC+12, UTC+13, UTC-02, UTC-03, UTC-04, UTC-05, UTC-06, UTC-07, UTC-08, UTC-09, UTC-10, and UTC-11.

          • SizePercentrequired — (Integer)

            The allocated percentage of users (segment members) to send the treatment to.

          • TemplateConfiguration — (map)

            The message template to use for the treatment.

            • EmailTemplate — (map)

              The email template to use for the message.

              • Name — (String)

                The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

              • Version — (String)

                The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

            • PushTemplate — (map)

              The push notification template to use for the message.

              • Name — (String)

                The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

              • Version — (String)

                The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

            • SMSTemplate — (map)

              The SMS template to use for the message.

              • Name — (String)

                The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

              • Version — (String)

                The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

            • VoiceTemplate — (map)

              The voice template to use for the message. This object isn't supported for campaigns.

              • Name — (String)

                The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

              • Version — (String)

                The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

            • InAppTemplate — (map)

              The InApp template to use for the message. The InApp template object is not supported for SendMessages.

              • Name — (String)

                The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

              • Version — (String)

                The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

          • TreatmentDescription — (String)

            A custom description of the treatment.

          • TreatmentName — (String)

            A custom name for the treatment.

        • CustomDeliveryConfiguration — (map)

          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.

          • DeliveryUrirequired — (String)

            The destination to send the campaign or treatment to. This value can be one of the following:

            • The name or Amazon Resource Name (ARN) of an AWS Lambda function to invoke to handle delivery of the campaign or treatment.

            • The URL for a web application or service that supports HTTPS and can receive the message. The URL has to be a full URL, including the HTTPS protocol.

          • EndpointTypes — (Array<String>)

            The types of endpoints to send the campaign or treatment to. Each valid value maps to a type of channel that you can associate with an endpoint by using the ChannelType property of an endpoint.

        • Description — (String)

          A custom description of the campaign.

        • HoldoutPercent — (Integer)

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

        • Hook — (map)

          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.

          • LambdaFunctionName — (String)

            The name or Amazon Resource Name (ARN) of the AWS Lambda function that Amazon Pinpoint invokes to customize a segment for a campaign.

          • Mode — (String)

            The mode that Amazon Pinpoint uses to invoke the AWS Lambda function. Possible values are:

            • FILTER - Invoke the function to customize the segment that's used by a campaign.

            • DELIVERY - (Deprecated) Previously, invoked the function to send a campaign through a custom channel. This functionality is not supported anymore. To send a campaign through a custom channel, use the CustomDeliveryConfiguration and CampaignCustomMessage objects of the campaign.

            Possible values include:
            • "DELIVERY"
            • "FILTER"
          • WebUrl — (String)

            The web URL that Amazon Pinpoint calls to invoke the AWS Lambda function over HTTPS.

        • IsPaused — (Boolean)

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

        • Limits — (map)

          The messaging limits for the campaign.

          • Daily — (Integer)

            The maximum number of messages that a campaign can send to a single endpoint during a 24-hour period. For an application, this value specifies the default limit for the number of messages that campaigns and journeys can send to a single endpoint during a 24-hour period. The maximum value is 100.

          • MaximumDuration — (Integer)

            The maximum amount of time, in seconds, that a campaign can attempt to deliver a message after the scheduled start time for the campaign. The minimum value is 60 seconds.

          • MessagesPerSecond — (Integer)

            The maximum number of messages that a campaign can send each second. For an application, this value specifies the default limit for the number of messages that campaigns can send each second. The minimum value is 1. The maximum value is 20,000.

          • Total — (Integer)

            The maximum number of messages that a campaign can send to a single endpoint during the course of the campaign. If a campaign recurs, this setting applies to all runs of the campaign. The maximum value is 100.

          • Session — (Integer)

            The maximum total number of messages that the campaign can send per user session.

        • MessageConfiguration — (map)

          The message configuration settings for the campaign.

          • ADMMessage — (map)

            The message that the campaign sends through the ADM (Amazon Device Messaging) channel. If specified, this message overrides the default message.

            • Action — (String)

              The action to occur if a recipient taps the push notification. Valid values are:

              • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

              • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

              • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

              Possible values include:
              • "OPEN_APP"
              • "DEEP_LINK"
              • "URL"
            • Body — (String)

              The body of the notification message. The maximum number of characters is 200.

            • ImageIconUrl — (String)

              The URL of the image to display as the push-notification icon, such as the icon for the app.

            • ImageSmallIconUrl — (String)

              The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

            • ImageUrl — (String)

              The URL of an image to display in the push notification.

            • JsonBody — (String)

              The JSON payload to use for a silent push notification.

            • MediaUrl — (String)

              The URL of the image or video to display in the push notification.

            • RawContent — (String)

              The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

            • SilentPush — (Boolean)

              Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

            • TimeToLive — (Integer)

              The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

              This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

            • Title — (String)

              The title to display above the notification message on a recipient's device.

            • Url — (String)

              The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

          • APNSMessage — (map)

            The message that the campaign sends through the APNs (Apple Push Notification service) channel. If specified, this message overrides the default message.

            • Action — (String)

              The action to occur if a recipient taps the push notification. Valid values are:

              • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

              • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

              • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

              Possible values include:
              • "OPEN_APP"
              • "DEEP_LINK"
              • "URL"
            • Body — (String)

              The body of the notification message. The maximum number of characters is 200.

            • ImageIconUrl — (String)

              The URL of the image to display as the push-notification icon, such as the icon for the app.

            • ImageSmallIconUrl — (String)

              The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

            • ImageUrl — (String)

              The URL of an image to display in the push notification.

            • JsonBody — (String)

              The JSON payload to use for a silent push notification.

            • MediaUrl — (String)

              The URL of the image or video to display in the push notification.

            • RawContent — (String)

              The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

            • SilentPush — (Boolean)

              Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

            • TimeToLive — (Integer)

              The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

              This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

            • Title — (String)

              The title to display above the notification message on a recipient's device.

            • Url — (String)

              The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

          • BaiduMessage — (map)

            The message that the campaign sends through the Baidu (Baidu Cloud Push) channel. If specified, this message overrides the default message.

            • Action — (String)

              The action to occur if a recipient taps the push notification. Valid values are:

              • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

              • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

              • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

              Possible values include:
              • "OPEN_APP"
              • "DEEP_LINK"
              • "URL"
            • Body — (String)

              The body of the notification message. The maximum number of characters is 200.

            • ImageIconUrl — (String)

              The URL of the image to display as the push-notification icon, such as the icon for the app.

            • ImageSmallIconUrl — (String)

              The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

            • ImageUrl — (String)

              The URL of an image to display in the push notification.

            • JsonBody — (String)

              The JSON payload to use for a silent push notification.

            • MediaUrl — (String)

              The URL of the image or video to display in the push notification.

            • RawContent — (String)

              The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

            • SilentPush — (Boolean)

              Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

            • TimeToLive — (Integer)

              The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

              This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

            • Title — (String)

              The title to display above the notification message on a recipient's device.

            • Url — (String)

              The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

          • CustomMessage — (map)

            The message that the campaign sends through a custom channel, as specified by the delivery configuration (CustomDeliveryConfiguration) settings for the campaign. If specified, this message overrides the default message.

            • Data — (String)

              The raw, JSON-formatted string to use as the payload for the message. The maximum size is 5 KB.

          • DefaultMessage — (map)

            The default message that the campaign sends through all the channels that are configured for the campaign.

            • Action — (String)

              The action to occur if a recipient taps the push notification. Valid values are:

              • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

              • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

              • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

              Possible values include:
              • "OPEN_APP"
              • "DEEP_LINK"
              • "URL"
            • Body — (String)

              The body of the notification message. The maximum number of characters is 200.

            • ImageIconUrl — (String)

              The URL of the image to display as the push-notification icon, such as the icon for the app.

            • ImageSmallIconUrl — (String)

              The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

            • ImageUrl — (String)

              The URL of an image to display in the push notification.

            • JsonBody — (String)

              The JSON payload to use for a silent push notification.

            • MediaUrl — (String)

              The URL of the image or video to display in the push notification.

            • RawContent — (String)

              The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

            • SilentPush — (Boolean)

              Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

            • TimeToLive — (Integer)

              The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

              This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

            • Title — (String)

              The title to display above the notification message on a recipient's device.

            • Url — (String)

              The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

          • EmailMessage — (map)

            The message that the campaign sends through the email channel. If specified, this message overrides the default message.

            • Body — (String)

              The body of the email for recipients whose email clients don't render HTML content.

            • FromAddress — (String)

              The verified email address to send the email from. The default address is the FromAddress specified for the email channel for the application.

            • Headers — (Array<map>)

              The list of MessageHeaders for the email. You can have up to 15 MessageHeaders for each email.

              • Name — (String)

                The name of the message header. The header name can contain up to 126 characters.

              • Value — (String)

                The value of the message header. The header value can contain up to 870 characters, including the length of any rendered attributes. For example if you add the {CreationDate} attribute, it renders as YYYY-MM-DDTHH:MM:SS.SSSZ and is 24 characters in length.

            • HtmlBody — (String)

              The body of the email, in HTML format, for recipients whose email clients render HTML content.

            • Title — (String)

              The subject line, or title, of the email.

          • GCMMessage — (map)

            The message that the campaign sends through the GCM channel, which enables Amazon Pinpoint to send push notifications through the Firebase Cloud Messaging (FCM), formerly Google Cloud Messaging (GCM), service. If specified, this message overrides the default message.

            • Action — (String)

              The action to occur if a recipient taps the push notification. Valid values are:

              • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

              • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

              • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

              Possible values include:
              • "OPEN_APP"
              • "DEEP_LINK"
              • "URL"
            • Body — (String)

              The body of the notification message. The maximum number of characters is 200.

            • ImageIconUrl — (String)

              The URL of the image to display as the push-notification icon, such as the icon for the app.

            • ImageSmallIconUrl — (String)

              The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

            • ImageUrl — (String)

              The URL of an image to display in the push notification.

            • JsonBody — (String)

              The JSON payload to use for a silent push notification.

            • MediaUrl — (String)

              The URL of the image or video to display in the push notification.

            • RawContent — (String)

              The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

            • SilentPush — (Boolean)

              Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

            • TimeToLive — (Integer)

              The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

              This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

            • Title — (String)

              The title to display above the notification message on a recipient's device.

            • Url — (String)

              The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

          • SMSMessage — (map)

            The message that the campaign sends through the SMS channel. If specified, this message overrides the default message.

            • Body — (String)

              The body of the SMS message.

            • MessageType — (String)

              The SMS message type. Valid values are TRANSACTIONAL (for messages that are critical or time-sensitive, such as a one-time passwords) and PROMOTIONAL (for messsages that aren't critical or time-sensitive, such as marketing messages).

              Possible values include:
              • "TRANSACTIONAL"
              • "PROMOTIONAL"
            • OriginationNumber — (String)

              The long code to send the SMS message from. This value should be one of the dedicated long codes that's assigned to your AWS account. Although it isn't required, we recommend that you specify the long code using an E.164 format to ensure prompt and accurate delivery of the message. For example, +12065550100.

            • SenderId — (String)

              The sender ID to display on recipients' devices when they receive the SMS message.

            • EntityId — (String)

              The entity ID or Principal Entity (PE) id received from the regulatory body for sending SMS in your country.

            • TemplateId — (String)

              The template ID received from the regulatory body for sending SMS in your country.

          • InAppMessage — (map)

            The in-app message configuration.

            • Body — (String)

              The message body of the notification, the email body or the text message.

            • Content — (Array<map>)

              In-app message content.

              • BackgroundColor — (String)

                The background color for the message.

              • BodyConfig — (map)

                The configuration for the message body.

                • Alignmentrequired — (String)

                  The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

                  Possible values include:
                  • "LEFT"
                  • "CENTER"
                  • "RIGHT"
                • Bodyrequired — (String)

                  Message Body.

                • TextColorrequired — (String)

                  The text color.

              • HeaderConfig — (map)

                The configuration for the message header.

                • Alignmentrequired — (String)

                  The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

                  Possible values include:
                  • "LEFT"
                  • "CENTER"
                  • "RIGHT"
                • Headerrequired — (String)

                  Message Header.

                • TextColorrequired — (String)

                  The text color.

              • ImageUrl — (String)

                The image url for the background of message.

              • PrimaryBtn — (map)

                The first button inside the message.

                • Android — (map)

                  Default button content.

                  • ButtonActionrequired — (String)

                    Action triggered by the button.

                    Possible values include:
                    • "LINK"
                    • "DEEP_LINK"
                    • "CLOSE"
                  • Link — (String)

                    Button destination.

                • DefaultConfig — (map)

                  Default button content.

                  • BackgroundColor — (String)

                    The background color of the button.

                  • BorderRadius — (Integer)

                    The border radius of the button.

                  • ButtonActionrequired — (String)

                    Action triggered by the button.

                    Possible values include:
                    • "LINK"
                    • "DEEP_LINK"
                    • "CLOSE"
                  • Link — (String)

                    Button destination.

                  • Textrequired — (String)

                    Button text.

                  • TextColor — (String)

                    The text color of the button.

                • IOS — (map)

                  Default button content.

                  • ButtonActionrequired — (String)

                    Action triggered by the button.

                    Possible values include:
                    • "LINK"
                    • "DEEP_LINK"
                    • "CLOSE"
                  • Link — (String)

                    Button destination.

                • Web — (map)

                  Default button content.

                  • ButtonActionrequired — (String)

                    Action triggered by the button.

                    Possible values include:
                    • "LINK"
                    • "DEEP_LINK"
                    • "CLOSE"
                  • Link — (String)

                    Button destination.

              • SecondaryBtn — (map)

                The second button inside message.

                • Android — (map)

                  Default button content.

                  • ButtonActionrequired — (String)

                    Action triggered by the button.

                    Possible values include:
                    • "LINK"
                    • "DEEP_LINK"
                    • "CLOSE"
                  • Link — (String)

                    Button destination.

                • DefaultConfig — (map)

                  Default button content.

                  • BackgroundColor — (String)

                    The background color of the button.

                  • BorderRadius — (Integer)

                    The border radius of the button.

                  • ButtonActionrequired — (String)

                    Action triggered by the button.

                    Possible values include:
                    • "LINK"
                    • "DEEP_LINK"
                    • "CLOSE"
                  • Link — (String)

                    Button destination.

                  • Textrequired — (String)

                    Button text.

                  • TextColor — (String)

                    The text color of the button.

                • IOS — (map)

                  Default button content.

                  • ButtonActionrequired — (String)

                    Action triggered by the button.

                    Possible values include:
                    • "LINK"
                    • "DEEP_LINK"
                    • "CLOSE"
                  • Link — (String)

                    Button destination.

                • Web — (map)

                  Default button content.

                  • ButtonActionrequired — (String)

                    Action triggered by the button.

                    Possible values include:
                    • "LINK"
                    • "DEEP_LINK"
                    • "CLOSE"
                  • Link — (String)

                    Button destination.

            • CustomConfig — (map<String>)

              Custom config to be sent to client.

            • Layout — (String)

              In-app message layout.

              Possible values include:
              • "BOTTOM_BANNER"
              • "TOP_BANNER"
              • "OVERLAYS"
              • "MOBILE_FEED"
              • "MIDDLE_BANNER"
              • "CAROUSEL"
        • Name — (String)

          A custom name for the campaign.

        • Schedule — (map)

          The schedule settings for the campaign.

          • EndTime — (String)

            The scheduled time, in ISO 8601 format, when the campaign ended or will end.

          • EventFilter — (map)

            The type of event that causes the campaign to be sent, if the value of the Frequency property is EVENT.

            • Dimensionsrequired — (map)

              The dimension settings of the event filter for the campaign.

              • Attributes — (map<map>)

                One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                • AttributeType — (String)

                  The type of segment dimension to use. Valid values are:

                  • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                  • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                  • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                  • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                  • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                  • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                  • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                  • Possible values include:
                    • "INCLUSIVE"
                    • "EXCLUSIVE"
                    • "CONTAINS"
                    • "BEFORE"
                    • "AFTER"
                    • "ON"
                    • "BETWEEN"
                  • Valuesrequired — (Array<String>)

                    The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                • EventType — (map)

                  The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                  • DimensionType — (String)

                    The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                    Possible values include:
                    • "INCLUSIVE"
                    • "EXCLUSIVE"
                  • Valuesrequired — (Array<String>)

                    The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                • Metrics — (map<map>)

                  One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                  • ComparisonOperatorrequired — (String)

                    The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                  • Valuerequired — (Float)

                    The value to compare.

              • FilterTyperequired — (String)

                The type of event that causes the campaign to be sent. Valid values are: SYSTEM, sends the campaign when a system event occurs; and, ENDPOINT, sends the campaign when an endpoint event (Events resource) occurs.

                Possible values include:
                • "SYSTEM"
                • "ENDPOINT"
            • Frequency — (String)

              Specifies how often the campaign is sent or whether the campaign is sent in response to a specific event.

              Possible values include:
              • "ONCE"
              • "HOURLY"
              • "DAILY"
              • "WEEKLY"
              • "MONTHLY"
              • "EVENT"
              • "IN_APP_EVENT"
            • IsLocalTime — (Boolean)

              Specifies whether the start and end times for the campaign schedule use each recipient's local time. To base the schedule on each recipient's local time, set this value to true.

            • QuietTime — (map)

              The default quiet time for the campaign. Quiet time is a specific time range when a campaign doesn't send messages to endpoints, if all the following conditions are met:

              • The EndpointDemographic.Timezone property of the endpoint is set to a valid value.

              • The current time in the endpoint's time zone is later than or equal to the time specified by the QuietTime.Start property for the campaign.

              • The current time in the endpoint's time zone is earlier than or equal to the time specified by the QuietTime.End property for the campaign.

              If any of the preceding conditions isn't met, the endpoint will receive messages from the campaign, even if quiet time is enabled.

              • End — (String)

                The specific time when quiet time ends. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

              • Start — (String)

                The specific time when quiet time begins. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

            • StartTimerequired — (String)

              The scheduled time when the campaign began or will begin. Valid values are: IMMEDIATE, to start the campaign immediately; or, a specific time in ISO 8601 format.

            • Timezone — (String)

              The starting UTC offset for the campaign schedule, if the value of the IsLocalTime property is true. Valid values are: UTC, UTC+01, UTC+02, UTC+03, UTC+03:30, UTC+04, UTC+04:30, UTC+05, UTC+05:30, UTC+05:45, UTC+06, UTC+06:30, UTC+07, UTC+08, UTC+09, UTC+09:30, UTC+10, UTC+10:30, UTC+11, UTC+12, UTC+13, UTC-02, UTC-03, UTC-04, UTC-05, UTC-06, UTC-07, UTC-08, UTC-09, UTC-10, and UTC-11.

          • SegmentId — (String)

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

          • SegmentVersion — (Integer)

            The version of the segment to associate with the campaign.

          • tags — (map<String>)
            Note: As of 22-05-2023 tags has been deprecated for update operations. After this date any value in tags is not processed and an error code is not returned. To manage tags we recommend using either Tags in the API Reference for Amazon Pinpoint, resourcegroupstaggingapi commands in the AWS Command Line Interface Documentation or resourcegroupstaggingapi in the AWS SDK.

            (Deprecated) 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.

          • TemplateConfiguration — (map)

            The message template to use for the campaign.

            • EmailTemplate — (map)

              The email template to use for the message.

              • Name — (String)

                The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

              • Version — (String)

                The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

            • PushTemplate — (map)

              The push notification template to use for the message.

              • Name — (String)

                The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

              • Version — (String)

                The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

            • SMSTemplate — (map)

              The SMS template to use for the message.

              • Name — (String)

                The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

              • Version — (String)

                The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

            • VoiceTemplate — (map)

              The voice template to use for the message. This object isn't supported for campaigns.

              • Name — (String)

                The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

              • Version — (String)

                The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

            • InAppTemplate — (map)

              The InApp template to use for the message. The InApp template object is not supported for SendMessages.

              • Name — (String)

                The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

              • Version — (String)

                The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

          • TreatmentDescription — (String)

            A custom description of the default treatment for the campaign.

          • TreatmentName — (String)

            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.

          • Priority — (Integer)

            Defines the priority of the campaign, used to decide the order of messages displayed to user if there are multiple messages scheduled to be displayed at the same moment.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • CampaignResponse — (map)

        Provides information about the status, configuration, and other settings for a campaign.

        • AdditionalTreatments — (Array<map>)

          An array of responses, one for each treatment that you defined for the campaign, in addition to the default treatment.

          • CustomDeliveryConfiguration — (map)

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

            • DeliveryUrirequired — (String)

              The destination to send the campaign or treatment to. This value can be one of the following:

              • The name or Amazon Resource Name (ARN) of an AWS Lambda function to invoke to handle delivery of the campaign or treatment.

              • The URL for a web application or service that supports HTTPS and can receive the message. The URL has to be a full URL, including the HTTPS protocol.

            • EndpointTypes — (Array<String>)

              The types of endpoints to send the campaign or treatment to. Each valid value maps to a type of channel that you can associate with an endpoint by using the ChannelType property of an endpoint.

          • Idrequired — (String)

            The unique identifier for the treatment.

          • MessageConfiguration — (map)

            The message configuration settings for the treatment.

            • ADMMessage — (map)

              The message that the campaign sends through the ADM (Amazon Device Messaging) channel. If specified, this message overrides the default message.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • APNSMessage — (map)

              The message that the campaign sends through the APNs (Apple Push Notification service) channel. If specified, this message overrides the default message.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • BaiduMessage — (map)

              The message that the campaign sends through the Baidu (Baidu Cloud Push) channel. If specified, this message overrides the default message.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • CustomMessage — (map)

              The message that the campaign sends through a custom channel, as specified by the delivery configuration (CustomDeliveryConfiguration) settings for the campaign. If specified, this message overrides the default message.

              • Data — (String)

                The raw, JSON-formatted string to use as the payload for the message. The maximum size is 5 KB.

            • DefaultMessage — (map)

              The default message that the campaign sends through all the channels that are configured for the campaign.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • EmailMessage — (map)

              The message that the campaign sends through the email channel. If specified, this message overrides the default message.

              • Body — (String)

                The body of the email for recipients whose email clients don't render HTML content.

              • FromAddress — (String)

                The verified email address to send the email from. The default address is the FromAddress specified for the email channel for the application.

              • Headers — (Array<map>)

                The list of MessageHeaders for the email. You can have up to 15 MessageHeaders for each email.

                • Name — (String)

                  The name of the message header. The header name can contain up to 126 characters.

                • Value — (String)

                  The value of the message header. The header value can contain up to 870 characters, including the length of any rendered attributes. For example if you add the {CreationDate} attribute, it renders as YYYY-MM-DDTHH:MM:SS.SSSZ and is 24 characters in length.

              • HtmlBody — (String)

                The body of the email, in HTML format, for recipients whose email clients render HTML content.

              • Title — (String)

                The subject line, or title, of the email.

            • GCMMessage — (map)

              The message that the campaign sends through the GCM channel, which enables Amazon Pinpoint to send push notifications through the Firebase Cloud Messaging (FCM), formerly Google Cloud Messaging (GCM), service. If specified, this message overrides the default message.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • SMSMessage — (map)

              The message that the campaign sends through the SMS channel. If specified, this message overrides the default message.

              • Body — (String)

                The body of the SMS message.

              • MessageType — (String)

                The SMS message type. Valid values are TRANSACTIONAL (for messages that are critical or time-sensitive, such as a one-time passwords) and PROMOTIONAL (for messsages that aren't critical or time-sensitive, such as marketing messages).

                Possible values include:
                • "TRANSACTIONAL"
                • "PROMOTIONAL"
              • OriginationNumber — (String)

                The long code to send the SMS message from. This value should be one of the dedicated long codes that's assigned to your AWS account. Although it isn't required, we recommend that you specify the long code using an E.164 format to ensure prompt and accurate delivery of the message. For example, +12065550100.

              • SenderId — (String)

                The sender ID to display on recipients' devices when they receive the SMS message.

              • EntityId — (String)

                The entity ID or Principal Entity (PE) id received from the regulatory body for sending SMS in your country.

              • TemplateId — (String)

                The template ID received from the regulatory body for sending SMS in your country.

            • InAppMessage — (map)

              The in-app message configuration.

              • Body — (String)

                The message body of the notification, the email body or the text message.

              • Content — (Array<map>)

                In-app message content.

                • BackgroundColor — (String)

                  The background color for the message.

                • BodyConfig — (map)

                  The configuration for the message body.

                  • Alignmentrequired — (String)

                    The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

                    Possible values include:
                    • "LEFT"
                    • "CENTER"
                    • "RIGHT"
                  • Bodyrequired — (String)

                    Message Body.

                  • TextColorrequired — (String)

                    The text color.

                • HeaderConfig — (map)

                  The configuration for the message header.

                  • Alignmentrequired — (String)

                    The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

                    Possible values include:
                    • "LEFT"
                    • "CENTER"
                    • "RIGHT"
                  • Headerrequired — (String)

                    Message Header.

                  • TextColorrequired — (String)

                    The text color.

                • ImageUrl — (String)

                  The image url for the background of message.

                • PrimaryBtn — (map)

                  The first button inside the message.

                  • Android — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                  • DefaultConfig — (map)

                    Default button content.

                    • BackgroundColor — (String)

                      The background color of the button.

                    • BorderRadius — (Integer)

                      The border radius of the button.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                    • Textrequired — (String)

                      Button text.

                    • TextColor — (String)

                      The text color of the button.

                  • IOS — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                  • Web — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                • SecondaryBtn — (map)

                  The second button inside message.

                  • Android — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                  • DefaultConfig — (map)

                    Default button content.

                    • BackgroundColor — (String)

                      The background color of the button.

                    • BorderRadius — (Integer)

                      The border radius of the button.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                    • Textrequired — (String)

                      Button text.

                    • TextColor — (String)

                      The text color of the button.

                  • IOS — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                  • Web — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

              • CustomConfig — (map<String>)

                Custom config to be sent to client.

              • Layout — (String)

                In-app message layout.

                Possible values include:
                • "BOTTOM_BANNER"
                • "TOP_BANNER"
                • "OVERLAYS"
                • "MOBILE_FEED"
                • "MIDDLE_BANNER"
                • "CAROUSEL"
          • Schedule — (map)

            The schedule settings for the treatment.

            • EndTime — (String)

              The scheduled time, in ISO 8601 format, when the campaign ended or will end.

            • EventFilter — (map)

              The type of event that causes the campaign to be sent, if the value of the Frequency property is EVENT.

              • Dimensionsrequired — (map)

                The dimension settings of the event filter for the campaign.

                • Attributes — (map<map>)

                  One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                  • AttributeType — (String)

                    The type of segment dimension to use. Valid values are:

                    • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                    • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                    • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                    • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                    • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                    • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                    • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                    • Possible values include:
                      • "INCLUSIVE"
                      • "EXCLUSIVE"
                      • "CONTAINS"
                      • "BEFORE"
                      • "AFTER"
                      • "ON"
                      • "BETWEEN"
                    • Valuesrequired — (Array<String>)

                      The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                  • EventType — (map)

                    The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                    • DimensionType — (String)

                      The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                      Possible values include:
                      • "INCLUSIVE"
                      • "EXCLUSIVE"
                    • Valuesrequired — (Array<String>)

                      The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                  • Metrics — (map<map>)

                    One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                    • ComparisonOperatorrequired — (String)

                      The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                    • Valuerequired — (Float)

                      The value to compare.

                • FilterTyperequired — (String)

                  The type of event that causes the campaign to be sent. Valid values are: SYSTEM, sends the campaign when a system event occurs; and, ENDPOINT, sends the campaign when an endpoint event (Events resource) occurs.

                  Possible values include:
                  • "SYSTEM"
                  • "ENDPOINT"
              • Frequency — (String)

                Specifies how often the campaign is sent or whether the campaign is sent in response to a specific event.

                Possible values include:
                • "ONCE"
                • "HOURLY"
                • "DAILY"
                • "WEEKLY"
                • "MONTHLY"
                • "EVENT"
                • "IN_APP_EVENT"
              • IsLocalTime — (Boolean)

                Specifies whether the start and end times for the campaign schedule use each recipient's local time. To base the schedule on each recipient's local time, set this value to true.

              • QuietTime — (map)

                The default quiet time for the campaign. Quiet time is a specific time range when a campaign doesn't send messages to endpoints, if all the following conditions are met:

                • The EndpointDemographic.Timezone property of the endpoint is set to a valid value.

                • The current time in the endpoint's time zone is later than or equal to the time specified by the QuietTime.Start property for the campaign.

                • The current time in the endpoint's time zone is earlier than or equal to the time specified by the QuietTime.End property for the campaign.

                If any of the preceding conditions isn't met, the endpoint will receive messages from the campaign, even if quiet time is enabled.

                • End — (String)

                  The specific time when quiet time ends. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

                • Start — (String)

                  The specific time when quiet time begins. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

              • StartTimerequired — (String)

                The scheduled time when the campaign began or will begin. Valid values are: IMMEDIATE, to start the campaign immediately; or, a specific time in ISO 8601 format.

              • Timezone — (String)

                The starting UTC offset for the campaign schedule, if the value of the IsLocalTime property is true. Valid values are: UTC, UTC+01, UTC+02, UTC+03, UTC+03:30, UTC+04, UTC+04:30, UTC+05, UTC+05:30, UTC+05:45, UTC+06, UTC+06:30, UTC+07, UTC+08, UTC+09, UTC+09:30, UTC+10, UTC+10:30, UTC+11, UTC+12, UTC+13, UTC-02, UTC-03, UTC-04, UTC-05, UTC-06, UTC-07, UTC-08, UTC-09, UTC-10, and UTC-11.

            • SizePercentrequired — (Integer)

              The allocated percentage of users (segment members) that the treatment is sent to.

            • State — (map)

              The current status of the treatment.

              • CampaignStatus — (String)

                The current status of the campaign, or the current status of a treatment that belongs to an A/B test campaign.

                If a campaign uses A/B testing, the campaign has a status of COMPLETED only if all campaign treatments have a status of COMPLETED. If you delete the segment that's associated with a campaign, the campaign fails and has a status of DELETED.

                Possible values include:
                • "SCHEDULED"
                • "EXECUTING"
                • "PENDING_NEXT_RUN"
                • "COMPLETED"
                • "PAUSED"
                • "DELETED"
                • "INVALID"
            • TemplateConfiguration — (map)

              The message template to use for the treatment.

              • EmailTemplate — (map)

                The email template to use for the message.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • PushTemplate — (map)

                The push notification template to use for the message.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • SMSTemplate — (map)

                The SMS template to use for the message.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • VoiceTemplate — (map)

                The voice template to use for the message. This object isn't supported for campaigns.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • InAppTemplate — (map)

                The InApp template to use for the message. The InApp template object is not supported for SendMessages.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

            • TreatmentDescription — (String)

              The custom description of the treatment.

            • TreatmentName — (String)

              The custom name of the treatment.

          • ApplicationIdrequired — (String)

            The unique identifier for the application that the campaign applies to.

          • Arnrequired — (String)

            The Amazon Resource Name (ARN) of the campaign.

          • CreationDaterequired — (String)

            The date, in ISO 8601 format, when the campaign was created.

          • CustomDeliveryConfiguration — (map)

            The delivery configuration settings for sending the campaign through a custom channel.

            • DeliveryUrirequired — (String)

              The destination to send the campaign or treatment to. This value can be one of the following:

              • The name or Amazon Resource Name (ARN) of an AWS Lambda function to invoke to handle delivery of the campaign or treatment.

              • The URL for a web application or service that supports HTTPS and can receive the message. The URL has to be a full URL, including the HTTPS protocol.

            • EndpointTypes — (Array<String>)

              The types of endpoints to send the campaign or treatment to. Each valid value maps to a type of channel that you can associate with an endpoint by using the ChannelType property of an endpoint.

          • DefaultState — (map)

            The current status of the campaign's default treatment. This value exists only for campaigns that have more than one treatment.

            • CampaignStatus — (String)

              The current status of the campaign, or the current status of a treatment that belongs to an A/B test campaign.

              If a campaign uses A/B testing, the campaign has a status of COMPLETED only if all campaign treatments have a status of COMPLETED. If you delete the segment that's associated with a campaign, the campaign fails and has a status of DELETED.

              Possible values include:
              • "SCHEDULED"
              • "EXECUTING"
              • "PENDING_NEXT_RUN"
              • "COMPLETED"
              • "PAUSED"
              • "DELETED"
              • "INVALID"
          • Description — (String)

            The custom description of the campaign.

          • HoldoutPercent — (Integer)

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

          • Hook — (map)

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

            • LambdaFunctionName — (String)

              The name or Amazon Resource Name (ARN) of the AWS Lambda function that Amazon Pinpoint invokes to customize a segment for a campaign.

            • Mode — (String)

              The mode that Amazon Pinpoint uses to invoke the AWS Lambda function. Possible values are:

              • FILTER - Invoke the function to customize the segment that's used by a campaign.

              • DELIVERY - (Deprecated) Previously, invoked the function to send a campaign through a custom channel. This functionality is not supported anymore. To send a campaign through a custom channel, use the CustomDeliveryConfiguration and CampaignCustomMessage objects of the campaign.

              Possible values include:
              • "DELIVERY"
              • "FILTER"
            • WebUrl — (String)

              The web URL that Amazon Pinpoint calls to invoke the AWS Lambda function over HTTPS.

          • Idrequired — (String)

            The unique identifier for the campaign.

          • IsPaused — (Boolean)

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

          • LastModifiedDaterequired — (String)

            The date, in ISO 8601 format, when the campaign was last modified.

          • Limits — (map)

            The messaging limits for the campaign.

            • Daily — (Integer)

              The maximum number of messages that a campaign can send to a single endpoint during a 24-hour period. For an application, this value specifies the default limit for the number of messages that campaigns and journeys can send to a single endpoint during a 24-hour period. The maximum value is 100.

            • MaximumDuration — (Integer)

              The maximum amount of time, in seconds, that a campaign can attempt to deliver a message after the scheduled start time for the campaign. The minimum value is 60 seconds.

            • MessagesPerSecond — (Integer)

              The maximum number of messages that a campaign can send each second. For an application, this value specifies the default limit for the number of messages that campaigns can send each second. The minimum value is 1. The maximum value is 20,000.

            • Total — (Integer)

              The maximum number of messages that a campaign can send to a single endpoint during the course of the campaign. If a campaign recurs, this setting applies to all runs of the campaign. The maximum value is 100.

            • Session — (Integer)

              The maximum total number of messages that the campaign can send per user session.

          • MessageConfiguration — (map)

            The message configuration settings for the campaign.

            • ADMMessage — (map)

              The message that the campaign sends through the ADM (Amazon Device Messaging) channel. If specified, this message overrides the default message.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • APNSMessage — (map)

              The message that the campaign sends through the APNs (Apple Push Notification service) channel. If specified, this message overrides the default message.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • BaiduMessage — (map)

              The message that the campaign sends through the Baidu (Baidu Cloud Push) channel. If specified, this message overrides the default message.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • CustomMessage — (map)

              The message that the campaign sends through a custom channel, as specified by the delivery configuration (CustomDeliveryConfiguration) settings for the campaign. If specified, this message overrides the default message.

              • Data — (String)

                The raw, JSON-formatted string to use as the payload for the message. The maximum size is 5 KB.

            • DefaultMessage — (map)

              The default message that the campaign sends through all the channels that are configured for the campaign.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • EmailMessage — (map)

              The message that the campaign sends through the email channel. If specified, this message overrides the default message.

              • Body — (String)

                The body of the email for recipients whose email clients don't render HTML content.

              • FromAddress — (String)

                The verified email address to send the email from. The default address is the FromAddress specified for the email channel for the application.

              • Headers — (Array<map>)

                The list of MessageHeaders for the email. You can have up to 15 MessageHeaders for each email.

                • Name — (String)

                  The name of the message header. The header name can contain up to 126 characters.

                • Value — (String)

                  The value of the message header. The header value can contain up to 870 characters, including the length of any rendered attributes. For example if you add the {CreationDate} attribute, it renders as YYYY-MM-DDTHH:MM:SS.SSSZ and is 24 characters in length.

              • HtmlBody — (String)

                The body of the email, in HTML format, for recipients whose email clients render HTML content.

              • Title — (String)

                The subject line, or title, of the email.

            • GCMMessage — (map)

              The message that the campaign sends through the GCM channel, which enables Amazon Pinpoint to send push notifications through the Firebase Cloud Messaging (FCM), formerly Google Cloud Messaging (GCM), service. If specified, this message overrides the default message.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • SMSMessage — (map)

              The message that the campaign sends through the SMS channel. If specified, this message overrides the default message.

              • Body — (String)

                The body of the SMS message.

              • MessageType — (String)

                The SMS message type. Valid values are TRANSACTIONAL (for messages that are critical or time-sensitive, such as a one-time passwords) and PROMOTIONAL (for messsages that aren't critical or time-sensitive, such as marketing messages).

                Possible values include:
                • "TRANSACTIONAL"
                • "PROMOTIONAL"
              • OriginationNumber — (String)

                The long code to send the SMS message from. This value should be one of the dedicated long codes that's assigned to your AWS account. Although it isn't required, we recommend that you specify the long code using an E.164 format to ensure prompt and accurate delivery of the message. For example, +12065550100.

              • SenderId — (String)

                The sender ID to display on recipients' devices when they receive the SMS message.

              • EntityId — (String)

                The entity ID or Principal Entity (PE) id received from the regulatory body for sending SMS in your country.

              • TemplateId — (String)

                The template ID received from the regulatory body for sending SMS in your country.

            • InAppMessage — (map)

              The in-app message configuration.

              • Body — (String)

                The message body of the notification, the email body or the text message.

              • Content — (Array<map>)

                In-app message content.

                • BackgroundColor — (String)

                  The background color for the message.

                • BodyConfig — (map)

                  The configuration for the message body.

                  • Alignmentrequired — (String)

                    The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

                    Possible values include:
                    • "LEFT"
                    • "CENTER"
                    • "RIGHT"
                  • Bodyrequired — (String)

                    Message Body.

                  • TextColorrequired — (String)

                    The text color.

                • HeaderConfig — (map)

                  The configuration for the message header.

                  • Alignmentrequired — (String)

                    The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

                    Possible values include:
                    • "LEFT"
                    • "CENTER"
                    • "RIGHT"
                  • Headerrequired — (String)

                    Message Header.

                  • TextColorrequired — (String)

                    The text color.

                • ImageUrl — (String)

                  The image url for the background of message.

                • PrimaryBtn — (map)

                  The first button inside the message.

                  • Android — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                  • DefaultConfig — (map)

                    Default button content.

                    • BackgroundColor — (String)

                      The background color of the button.

                    • BorderRadius — (Integer)

                      The border radius of the button.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                    • Textrequired — (String)

                      Button text.

                    • TextColor — (String)

                      The text color of the button.

                  • IOS — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                  • Web — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                • SecondaryBtn — (map)

                  The second button inside message.

                  • Android — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                  • DefaultConfig — (map)

                    Default button content.

                    • BackgroundColor — (String)

                      The background color of the button.

                    • BorderRadius — (Integer)

                      The border radius of the button.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                    • Textrequired — (String)

                      Button text.

                    • TextColor — (String)

                      The text color of the button.

                  • IOS — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                  • Web — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

              • CustomConfig — (map<String>)

                Custom config to be sent to client.

              • Layout — (String)

                In-app message layout.

                Possible values include:
                • "BOTTOM_BANNER"
                • "TOP_BANNER"
                • "OVERLAYS"
                • "MOBILE_FEED"
                • "MIDDLE_BANNER"
                • "CAROUSEL"
          • Name — (String)

            The name of the campaign.

          • Schedule — (map)

            The schedule settings for the campaign.

            • EndTime — (String)

              The scheduled time, in ISO 8601 format, when the campaign ended or will end.

            • EventFilter — (map)

              The type of event that causes the campaign to be sent, if the value of the Frequency property is EVENT.

              • Dimensionsrequired — (map)

                The dimension settings of the event filter for the campaign.

                • Attributes — (map<map>)

                  One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                  • AttributeType — (String)

                    The type of segment dimension to use. Valid values are:

                    • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                    • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                    • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                    • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                    • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                    • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                    • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                    • Possible values include:
                      • "INCLUSIVE"
                      • "EXCLUSIVE"
                      • "CONTAINS"
                      • "BEFORE"
                      • "AFTER"
                      • "ON"
                      • "BETWEEN"
                    • Valuesrequired — (Array<String>)

                      The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                  • EventType — (map)

                    The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                    • DimensionType — (String)

                      The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                      Possible values include:
                      • "INCLUSIVE"
                      • "EXCLUSIVE"
                    • Valuesrequired — (Array<String>)

                      The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                  • Metrics — (map<map>)

                    One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                    • ComparisonOperatorrequired — (String)

                      The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                    • Valuerequired — (Float)

                      The value to compare.

                • FilterTyperequired — (String)

                  The type of event that causes the campaign to be sent. Valid values are: SYSTEM, sends the campaign when a system event occurs; and, ENDPOINT, sends the campaign when an endpoint event (Events resource) occurs.

                  Possible values include:
                  • "SYSTEM"
                  • "ENDPOINT"
              • Frequency — (String)

                Specifies how often the campaign is sent or whether the campaign is sent in response to a specific event.

                Possible values include:
                • "ONCE"
                • "HOURLY"
                • "DAILY"
                • "WEEKLY"
                • "MONTHLY"
                • "EVENT"
                • "IN_APP_EVENT"
              • IsLocalTime — (Boolean)

                Specifies whether the start and end times for the campaign schedule use each recipient's local time. To base the schedule on each recipient's local time, set this value to true.

              • QuietTime — (map)

                The default quiet time for the campaign. Quiet time is a specific time range when a campaign doesn't send messages to endpoints, if all the following conditions are met:

                • The EndpointDemographic.Timezone property of the endpoint is set to a valid value.

                • The current time in the endpoint's time zone is later than or equal to the time specified by the QuietTime.Start property for the campaign.

                • The current time in the endpoint's time zone is earlier than or equal to the time specified by the QuietTime.End property for the campaign.

                If any of the preceding conditions isn't met, the endpoint will receive messages from the campaign, even if quiet time is enabled.

                • End — (String)

                  The specific time when quiet time ends. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

                • Start — (String)

                  The specific time when quiet time begins. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

              • StartTimerequired — (String)

                The scheduled time when the campaign began or will begin. Valid values are: IMMEDIATE, to start the campaign immediately; or, a specific time in ISO 8601 format.

              • Timezone — (String)

                The starting UTC offset for the campaign schedule, if the value of the IsLocalTime property is true. Valid values are: UTC, UTC+01, UTC+02, UTC+03, UTC+03:30, UTC+04, UTC+04:30, UTC+05, UTC+05:30, UTC+05:45, UTC+06, UTC+06:30, UTC+07, UTC+08, UTC+09, UTC+09:30, UTC+10, UTC+10:30, UTC+11, UTC+12, UTC+13, UTC-02, UTC-03, UTC-04, UTC-05, UTC-06, UTC-07, UTC-08, UTC-09, UTC-10, and UTC-11.

            • SegmentIdrequired — (String)

              The unique identifier for the segment that's associated with the campaign.

            • SegmentVersionrequired — (Integer)

              The version number of the segment that's associated with the campaign.

            • State — (map)

              The current status of the campaign.

              • CampaignStatus — (String)

                The current status of the campaign, or the current status of a treatment that belongs to an A/B test campaign.

                If a campaign uses A/B testing, the campaign has a status of COMPLETED only if all campaign treatments have a status of COMPLETED. If you delete the segment that's associated with a campaign, the campaign fails and has a status of DELETED.

                Possible values include:
                • "SCHEDULED"
                • "EXECUTING"
                • "PENDING_NEXT_RUN"
                • "COMPLETED"
                • "PAUSED"
                • "DELETED"
                • "INVALID"
            • tags — (map<String>)

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

            • TemplateConfiguration — (map)

              The message template that’s used for the campaign.

              • EmailTemplate — (map)

                The email template to use for the message.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • PushTemplate — (map)

                The push notification template to use for the message.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • SMSTemplate — (map)

                The SMS template to use for the message.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • VoiceTemplate — (map)

                The voice template to use for the message. This object isn't supported for campaigns.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • InAppTemplate — (map)

                The InApp template to use for the message. The InApp template object is not supported for SendMessages.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

            • TreatmentDescription — (String)

              The custom description of the default treatment for the campaign.

            • TreatmentName — (String)

              The 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.

            • Version — (Integer)

              The version number of the campaign.

            • Priority — (Integer)

              Defines the priority of the campaign, used to decide the order of messages displayed to user if there are multiple messages scheduled to be displayed at the same moment.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

createEmailTemplate(params = {}, callback) ⇒ AWS.Request

Creates a message template for messages that are sent through the email channel.

Service Reference:

Examples:

Calling the createEmailTemplate operation

var params = {
  EmailTemplateRequest: { /* required */
    DefaultSubstitutions: 'STRING_VALUE',
    Headers: [
      {
        Name: 'STRING_VALUE',
        Value: 'STRING_VALUE'
      },
      /* more items */
    ],
    HtmlPart: 'STRING_VALUE',
    RecommenderId: 'STRING_VALUE',
    Subject: 'STRING_VALUE',
    TemplateDescription: 'STRING_VALUE',
    TextPart: 'STRING_VALUE',
    tags: {
      '<__string>': 'STRING_VALUE',
      /* '<__string>': ... */
    }
  },
  TemplateName: 'STRING_VALUE' /* required */
};
pinpoint.createEmailTemplate(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • EmailTemplateRequest — (map)

      Specifies the content and settings for a message template that can be used in messages that are sent through the email channel.

      • DefaultSubstitutions — (String)

        A JSON object that specifies the default values to use for message variables in the message template. This object is a set of key-value pairs. Each key defines a message variable in the template. The corresponding value defines the default value for that variable. When you create a message that's based on the template, you can override these defaults with message-specific and address-specific variables and values.

      • HtmlPart — (String)

        The message body, in HTML format, to use in email messages that are based on the message template. We recommend using HTML format for email clients that render HTML content. You can include links, formatted text, and more in an HTML message.

      • RecommenderId — (String)

        The unique identifier for the recommender model to use for the message template. Amazon Pinpoint uses this value to determine how to retrieve and process data from a recommender model when it sends messages that use the template, if the template contains message variables for recommendation data.

      • Subject — (String)

        The subject line, or title, to use in email messages that are based on the message template.

      • Headers — (Array<map>)

        The list of MessageHeaders for the email. You can have up to 15 Headers.

        • Name — (String)

          The name of the message header. The header name can contain up to 126 characters.

        • Value — (String)

          The value of the message header. The header value can contain up to 870 characters, including the length of any rendered attributes. For example if you add the {CreationDate} attribute, it renders as YYYY-MM-DDTHH:MM:SS.SSSZ and is 24 characters in length.

      • tags — (map<String>)
        Note: As of 22-05-2023 tags has been deprecated for update operations. After this date any value in tags is not processed and an error code is not returned. To manage tags we recommend using either Tags in the API Reference for Amazon Pinpoint, resourcegroupstaggingapi commands in the AWS Command Line Interface Documentation or resourcegroupstaggingapi in the AWS SDK.

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

      • TemplateDescription — (String)

        A custom description of the message template.

      • TextPart — (String)

        The message body, in plain text format, to use in email messages that are based on the message template. We recommend using plain text format for email clients that don't render HTML content and clients that are connected to high-latency networks, such as mobile devices.

    • TemplateName — (String)

      The name of the message template. A template name must start with an alphanumeric character and can contain a maximum of 128 characters. The characters can be alphanumeric characters, underscores (_), or hyphens (-). Template names are case sensitive.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • CreateTemplateMessageBody — (map)

        Provides information about a request to create a message template.

        • Arn — (String)

          The Amazon Resource Name (ARN) of the message template that was created.

        • Message — (String)

          The message that's returned from the API for the request to create the message template.

        • RequestID — (String)

          The unique identifier for the request to create the message template.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

createExportJob(params = {}, callback) ⇒ AWS.Request

Creates an export job for an application.

Service Reference:

Examples:

Calling the createExportJob operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  ExportJobRequest: { /* required */
    RoleArn: 'STRING_VALUE', /* required */
    S3UrlPrefix: 'STRING_VALUE', /* required */
    SegmentId: 'STRING_VALUE',
    SegmentVersion: 'NUMBER_VALUE'
  }
};
pinpoint.createExportJob(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • ExportJobRequest — (map)

      Specifies the settings for a job that exports endpoint definitions to an Amazon Simple Storage Service (Amazon S3) bucket.

      • RoleArnrequired — (String)

        The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that authorizes Amazon Pinpoint to access the Amazon S3 location where you want to export endpoint definitions to.

      • S3UrlPrefixrequired — (String)

        The URL of the location in an Amazon Simple Storage Service (Amazon S3) bucket where you want to export endpoint definitions to. This location is typically a folder that contains multiple files. The URL should be in the following format: s3://bucket-name/folder-name/.

      • SegmentId — (String)

        The identifier for the segment to export endpoint definitions from. If you don't specify this value, Amazon Pinpoint exports definitions for all the endpoints that are associated with the application.

      • SegmentVersion — (Integer)

        The version of the segment to export endpoint definitions from, if specified.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • ExportJobResponse — (map)

        Provides information about the status and settings of a job that exports endpoint definitions to a file. The file can be added directly to an Amazon Simple Storage Service (Amazon S3) bucket by using the Amazon Pinpoint API or downloaded directly to a computer by using the Amazon Pinpoint console.

        • ApplicationIdrequired — (String)

          The unique identifier for the application that's associated with the export job.

        • CompletedPieces — (Integer)

          The number of pieces that were processed successfully (completed) by the export job, as of the time of the request.

        • CompletionDate — (String)

          The date, in ISO 8601 format, when the export job was completed.

        • CreationDaterequired — (String)

          The date, in ISO 8601 format, when the export job was created.

        • Definitionrequired — (map)

          The resource settings that apply to the export job.

          • RoleArnrequired — (String)

            The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that authorized Amazon Pinpoint to access the Amazon S3 location where the endpoint definitions were exported to.

          • S3UrlPrefixrequired — (String)

            The URL of the location in an Amazon Simple Storage Service (Amazon S3) bucket where the endpoint definitions were exported to. This location is typically a folder that contains multiple files. The URL should be in the following format: s3://bucket-name/folder-name/.

          • SegmentId — (String)

            The identifier for the segment that the endpoint definitions were exported from. If this value isn't present, Amazon Pinpoint exported definitions for all the endpoints that are associated with the application.

          • SegmentVersion — (Integer)

            The version of the segment that the endpoint definitions were exported from.

        • FailedPieces — (Integer)

          The number of pieces that weren't processed successfully (failed) by the export job, as of the time of the request.

        • Failures — (Array<String>)

          An array of entries, one for each of the first 100 entries that weren't processed successfully (failed) by the export job, if any.

        • Idrequired — (String)

          The unique identifier for the export job.

        • JobStatusrequired — (String)

          The status of the export job. The job status is FAILED if Amazon Pinpoint wasn't able to process one or more pieces in the job.

          Possible values include:
          • "CREATED"
          • "PREPARING_FOR_INITIALIZATION"
          • "INITIALIZING"
          • "PROCESSING"
          • "PENDING_JOB"
          • "COMPLETING"
          • "COMPLETED"
          • "FAILING"
          • "FAILED"
        • TotalFailures — (Integer)

          The total number of endpoint definitions that weren't processed successfully (failed) by the export job, typically because an error, such as a syntax error, occurred.

        • TotalPieces — (Integer)

          The total number of pieces that must be processed to complete the export job. Each piece consists of an approximately equal portion of the endpoint definitions that are part of the export job.

        • TotalProcessed — (Integer)

          The total number of endpoint definitions that were processed by the export job.

        • Typerequired — (String)

          The job type. This value is EXPORT for export jobs.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

createImportJob(params = {}, callback) ⇒ AWS.Request

Creates an import job for an application.

Service Reference:

Examples:

Calling the createImportJob operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  ImportJobRequest: { /* required */
    Format: CSV | JSON, /* required */
    RoleArn: 'STRING_VALUE', /* required */
    S3Url: 'STRING_VALUE', /* required */
    DefineSegment: true || false,
    ExternalId: 'STRING_VALUE',
    RegisterEndpoints: true || false,
    SegmentId: 'STRING_VALUE',
    SegmentName: 'STRING_VALUE'
  }
};
pinpoint.createImportJob(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • ImportJobRequest — (map)

      Specifies the settings for a job that imports endpoint definitions from an Amazon Simple Storage Service (Amazon S3) bucket.

      • DefineSegment — (Boolean)

        Specifies whether to create a segment that contains the endpoints, when the endpoint definitions are imported.

      • ExternalId — (String)

        (Deprecated) Your AWS account ID, which you assigned to an external ID key in an IAM trust policy. Amazon Pinpoint previously used this value to assume an IAM role when importing endpoint definitions, but we removed this requirement. We don't recommend use of external IDs for IAM roles that are assumed by Amazon Pinpoint.

      • Formatrequired — (String)

        The format of the files that contain the endpoint definitions to import. Valid values are: CSV, for comma-separated values format; and, JSON, for newline-delimited JSON format. If the Amazon S3 location stores multiple files that use different formats, Amazon Pinpoint imports data only from the files that use the specified format.

        Possible values include:
        • "CSV"
        • "JSON"
      • RegisterEndpoints — (Boolean)

        Specifies whether to register the endpoints with Amazon Pinpoint, when the endpoint definitions are imported.

      • RoleArnrequired — (String)

        The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that authorizes Amazon Pinpoint to access the Amazon S3 location to import endpoint definitions from.

      • S3Urlrequired — (String)

        The URL of the Amazon Simple Storage Service (Amazon S3) bucket that contains the endpoint definitions to import. This location can be a folder or a single file. If the location is a folder, Amazon Pinpoint imports endpoint definitions from the files in this location, including any subfolders that the folder contains.

        The URL should be in the following format: s3://bucket-name/folder-name/file-name. The location can end with the key for an individual object or a prefix that qualifies multiple objects.

      • SegmentId — (String)

        The identifier for the segment to update or add the imported endpoint definitions to, if the import job is meant to update an existing segment.

      • SegmentName — (String)

        A custom name for the segment that's created by the import job, if the value of the DefineSegment property is true.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • ImportJobResponse — (map)

        Provides information about the status and settings of a job that imports endpoint definitions from one or more files. The files can be stored in an Amazon Simple Storage Service (Amazon S3) bucket or uploaded directly from a computer by using the Amazon Pinpoint console.

        • ApplicationIdrequired — (String)

          The unique identifier for the application that's associated with the import job.

        • CompletedPieces — (Integer)

          The number of pieces that were processed successfully (completed) by the import job, as of the time of the request.

        • CompletionDate — (String)

          The date, in ISO 8601 format, when the import job was completed.

        • CreationDaterequired — (String)

          The date, in ISO 8601 format, when the import job was created.

        • Definitionrequired — (map)

          The resource settings that apply to the import job.

          • DefineSegment — (Boolean)

            Specifies whether the import job creates a segment that contains the endpoints, when the endpoint definitions are imported.

          • ExternalId — (String)

            (Deprecated) Your AWS account ID, which you assigned to an external ID key in an IAM trust policy. Amazon Pinpoint previously used this value to assume an IAM role when importing endpoint definitions, but we removed this requirement. We don't recommend use of external IDs for IAM roles that are assumed by Amazon Pinpoint.

          • Formatrequired — (String)

            The format of the files that contain the endpoint definitions to import. Valid values are: CSV, for comma-separated values format; and, JSON, for newline-delimited JSON format.

            If the files are stored in an Amazon S3 location and that location contains multiple files that use different formats, Amazon Pinpoint imports data only from the files that use the specified format.

            Possible values include:
            • "CSV"
            • "JSON"
          • RegisterEndpoints — (Boolean)

            Specifies whether the import job registers the endpoints with Amazon Pinpoint, when the endpoint definitions are imported.

          • RoleArnrequired — (String)

            The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that authorizes Amazon Pinpoint to access the Amazon S3 location to import endpoint definitions from.

          • S3Urlrequired — (String)

            The URL of the Amazon Simple Storage Service (Amazon S3) bucket that contains the endpoint definitions to import. This location can be a folder or a single file. If the location is a folder, Amazon Pinpoint imports endpoint definitions from the files in this location, including any subfolders that the folder contains.

            The URL should be in the following format: s3://bucket-name/folder-name/file-name. The location can end with the key for an individual object or a prefix that qualifies multiple objects.

          • SegmentId — (String)

            The identifier for the segment that the import job updates or adds endpoint definitions to, if the import job updates an existing segment.

          • SegmentName — (String)

            The custom name for the segment that's created by the import job, if the value of the DefineSegment property is true.

        • FailedPieces — (Integer)

          The number of pieces that weren't processed successfully (failed) by the import job, as of the time of the request.

        • Failures — (Array<String>)

          An array of entries, one for each of the first 100 entries that weren't processed successfully (failed) by the import job, if any.

        • Idrequired — (String)

          The unique identifier for the import job.

        • JobStatusrequired — (String)

          The status of the import job. The job status is FAILED if Amazon Pinpoint wasn't able to process one or more pieces in the job.

          Possible values include:
          • "CREATED"
          • "PREPARING_FOR_INITIALIZATION"
          • "INITIALIZING"
          • "PROCESSING"
          • "PENDING_JOB"
          • "COMPLETING"
          • "COMPLETED"
          • "FAILING"
          • "FAILED"
        • TotalFailures — (Integer)

          The total number of endpoint definitions that weren't processed successfully (failed) by the import job, typically because an error, such as a syntax error, occurred.

        • TotalPieces — (Integer)

          The total number of pieces that must be processed to complete the import job. Each piece consists of an approximately equal portion of the endpoint definitions that are part of the import job.

        • TotalProcessed — (Integer)

          The total number of endpoint definitions that were processed by the import job.

        • Typerequired — (String)

          The job type. This value is IMPORT for import jobs.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

createInAppTemplate(params = {}, callback) ⇒ AWS.Request

Creates a new message template for messages using the in-app message channel.

Service Reference:

Examples:

Calling the createInAppTemplate operation

var params = {
  InAppTemplateRequest: { /* required */
    Content: [
      {
        BackgroundColor: 'STRING_VALUE',
        BodyConfig: {
          Alignment: LEFT | CENTER | RIGHT, /* required */
          Body: 'STRING_VALUE', /* required */
          TextColor: 'STRING_VALUE' /* required */
        },
        HeaderConfig: {
          Alignment: LEFT | CENTER | RIGHT, /* required */
          Header: 'STRING_VALUE', /* required */
          TextColor: 'STRING_VALUE' /* required */
        },
        ImageUrl: 'STRING_VALUE',
        PrimaryBtn: {
          Android: {
            ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
            Link: 'STRING_VALUE'
          },
          DefaultConfig: {
            ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
            Text: 'STRING_VALUE', /* required */
            BackgroundColor: 'STRING_VALUE',
            BorderRadius: 'NUMBER_VALUE',
            Link: 'STRING_VALUE',
            TextColor: 'STRING_VALUE'
          },
          IOS: {
            ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
            Link: 'STRING_VALUE'
          },
          Web: {
            ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
            Link: 'STRING_VALUE'
          }
        },
        SecondaryBtn: {
          Android: {
            ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
            Link: 'STRING_VALUE'
          },
          DefaultConfig: {
            ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
            Text: 'STRING_VALUE', /* required */
            BackgroundColor: 'STRING_VALUE',
            BorderRadius: 'NUMBER_VALUE',
            Link: 'STRING_VALUE',
            TextColor: 'STRING_VALUE'
          },
          IOS: {
            ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
            Link: 'STRING_VALUE'
          },
          Web: {
            ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
            Link: 'STRING_VALUE'
          }
        }
      },
      /* more items */
    ],
    CustomConfig: {
      '<__string>': 'STRING_VALUE',
      /* '<__string>': ... */
    },
    Layout: BOTTOM_BANNER | TOP_BANNER | OVERLAYS | MOBILE_FEED | MIDDLE_BANNER | CAROUSEL,
    TemplateDescription: 'STRING_VALUE',
    tags: {
      '<__string>': 'STRING_VALUE',
      /* '<__string>': ... */
    }
  },
  TemplateName: 'STRING_VALUE' /* required */
};
pinpoint.createInAppTemplate(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • InAppTemplateRequest — (map)

      InApp Template Request.

      • Content — (Array<map>)

        The content of the message, can include up to 5 modals. Each modal must contain a message, a header, and background color. ImageUrl and buttons are optional.

        • BackgroundColor — (String)

          The background color for the message.

        • BodyConfig — (map)

          The configuration for the message body.

          • Alignmentrequired — (String)

            The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

            Possible values include:
            • "LEFT"
            • "CENTER"
            • "RIGHT"
          • Bodyrequired — (String)

            Message Body.

          • TextColorrequired — (String)

            The text color.

        • HeaderConfig — (map)

          The configuration for the message header.

          • Alignmentrequired — (String)

            The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

            Possible values include:
            • "LEFT"
            • "CENTER"
            • "RIGHT"
          • Headerrequired — (String)

            Message Header.

          • TextColorrequired — (String)

            The text color.

        • ImageUrl — (String)

          The image url for the background of message.

        • PrimaryBtn — (map)

          The first button inside the message.

          • Android — (map)

            Default button content.

            • ButtonActionrequired — (String)

              Action triggered by the button.

              Possible values include:
              • "LINK"
              • "DEEP_LINK"
              • "CLOSE"
            • Link — (String)

              Button destination.

          • DefaultConfig — (map)

            Default button content.

            • BackgroundColor — (String)

              The background color of the button.

            • BorderRadius — (Integer)

              The border radius of the button.

            • ButtonActionrequired — (String)

              Action triggered by the button.

              Possible values include:
              • "LINK"
              • "DEEP_LINK"
              • "CLOSE"
            • Link — (String)

              Button destination.

            • Textrequired — (String)

              Button text.

            • TextColor — (String)

              The text color of the button.

          • IOS — (map)

            Default button content.

            • ButtonActionrequired — (String)

              Action triggered by the button.

              Possible values include:
              • "LINK"
              • "DEEP_LINK"
              • "CLOSE"
            • Link — (String)

              Button destination.

          • Web — (map)

            Default button content.

            • ButtonActionrequired — (String)

              Action triggered by the button.

              Possible values include:
              • "LINK"
              • "DEEP_LINK"
              • "CLOSE"
            • Link — (String)

              Button destination.

        • SecondaryBtn — (map)

          The second button inside message.

          • Android — (map)

            Default button content.

            • ButtonActionrequired — (String)

              Action triggered by the button.

              Possible values include:
              • "LINK"
              • "DEEP_LINK"
              • "CLOSE"
            • Link — (String)

              Button destination.

          • DefaultConfig — (map)

            Default button content.

            • BackgroundColor — (String)

              The background color of the button.

            • BorderRadius — (Integer)

              The border radius of the button.

            • ButtonActionrequired — (String)

              Action triggered by the button.

              Possible values include:
              • "LINK"
              • "DEEP_LINK"
              • "CLOSE"
            • Link — (String)

              Button destination.

            • Textrequired — (String)

              Button text.

            • TextColor — (String)

              The text color of the button.

          • IOS — (map)

            Default button content.

            • ButtonActionrequired — (String)

              Action triggered by the button.

              Possible values include:
              • "LINK"
              • "DEEP_LINK"
              • "CLOSE"
            • Link — (String)

              Button destination.

          • Web — (map)

            Default button content.

            • ButtonActionrequired — (String)

              Action triggered by the button.

              Possible values include:
              • "LINK"
              • "DEEP_LINK"
              • "CLOSE"
            • Link — (String)

              Button destination.

      • CustomConfig — (map<String>)

        Custom config to be sent to client.

      • Layout — (String)

        The layout of the message.

        Possible values include:
        • "BOTTOM_BANNER"
        • "TOP_BANNER"
        • "OVERLAYS"
        • "MOBILE_FEED"
        • "MIDDLE_BANNER"
        • "CAROUSEL"
      • tags — (map<String>)
        Note: As of 22-05-2023 tags has been deprecated for update operations. After this date any value in tags is not processed and an error code is not returned. To manage tags we recommend using either Tags in the API Reference for Amazon Pinpoint, resourcegroupstaggingapi commands in the AWS Command Line Interface Documentation or resourcegroupstaggingapi in the AWS SDK.

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

      • TemplateDescription — (String)

        The description of the template.

    • TemplateName — (String)

      The name of the message template. A template name must start with an alphanumeric character and can contain a maximum of 128 characters. The characters can be alphanumeric characters, underscores (_), or hyphens (-). Template names are case sensitive.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • TemplateCreateMessageBody — (map)

        Provides information about a request to create a message template.

        • Arn — (String)

          The Amazon Resource Name (ARN) of the message template that was created.

        • Message — (String)

          The message that's returned from the API for the request to create the message template.

        • RequestID — (String)

          The unique identifier for the request to create the message template.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

createJourney(params = {}, callback) ⇒ AWS.Request

Creates a journey for an application.

Service Reference:

Examples:

Calling the createJourney operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  WriteJourneyRequest: { /* required */
    Name: 'STRING_VALUE', /* required */
    Activities: {
      '<__string>': {
        CUSTOM: {
          DeliveryUri: 'STRING_VALUE',
          EndpointTypes: [
            PUSH | GCM | APNS | APNS_SANDBOX | APNS_VOIP | APNS_VOIP_SANDBOX | ADM | SMS | VOICE | EMAIL | BAIDU | CUSTOM | IN_APP,
            /* more items */
          ],
          MessageConfig: {
            Data: 'STRING_VALUE'
          },
          NextActivity: 'STRING_VALUE',
          TemplateName: 'STRING_VALUE',
          TemplateVersion: 'STRING_VALUE'
        },
        ConditionalSplit: {
          Condition: {
            Conditions: [
              {
                EventCondition: {
                  Dimensions: {
                    Attributes: {
                      '<__string>': {
                        Values: [ /* required */
                          'STRING_VALUE',
                          /* more items */
                        ],
                        AttributeType: INCLUSIVE | EXCLUSIVE | CONTAINS | BEFORE | AFTER | ON | BETWEEN
                      },
                      /* '<__string>': ... */
                    },
                    EventType: {
                      Values: [ /* required */
                        'STRING_VALUE',
                        /* more items */
                      ],
                      DimensionType: INCLUSIVE | EXCLUSIVE
                    },
                    Metrics: {
                      '<__string>': {
                        ComparisonOperator: 'STRING_VALUE', /* required */
                        Value: 'NUMBER_VALUE' /* required */
                      },
                      /* '<__string>': ... */
                    }
                  },
                  MessageActivity: 'STRING_VALUE'
                },
                SegmentCondition: {
                  SegmentId: 'STRING_VALUE' /* required */
                },
                SegmentDimensions: {
                  Attributes: {
                    '<__string>': {
                      Values: [ /* required */
                        'STRING_VALUE',
                        /* more items */
                      ],
                      AttributeType: INCLUSIVE | EXCLUSIVE | CONTAINS | BEFORE | AFTER | ON | BETWEEN
                    },
                    /* '<__string>': ... */
                  },
                  Behavior: {
                    Recency: {
                      Duration: HR_24 | DAY_7 | DAY_14 | DAY_30, /* required */
                      RecencyType: ACTIVE | INACTIVE /* required */
                    }
                  },
                  Demographic: {
                    AppVersion: {
                      Values: [ /* required */
                        'STRING_VALUE',
                        /* more items */
                      ],
                      DimensionType: INCLUSIVE | EXCLUSIVE
                    },
                    Channel: {
                      Values: [ /* required */
                        'STRING_VALUE',
                        /* more items */
                      ],
                      DimensionType: INCLUSIVE | EXCLUSIVE
                    },
                    DeviceType: {
                      Values: [ /* required */
                        'STRING_VALUE',
                        /* more items */
                      ],
                      DimensionType: INCLUSIVE | EXCLUSIVE
                    },
                    Make: {
                      Values: [ /* required */
                        'STRING_VALUE',
                        /* more items */
                      ],
                      DimensionType: INCLUSIVE | EXCLUSIVE
                    },
                    Model: {
                      Values: [ /* required */
                        'STRING_VALUE',
                        /* more items */
                      ],
                      DimensionType: INCLUSIVE | EXCLUSIVE
                    },
                    Platform: {
                      Values: [ /* required */
                        'STRING_VALUE',
                        /* more items */
                      ],
                      DimensionType: INCLUSIVE | EXCLUSIVE
                    }
                  },
                  Location: {
                    Country: {
                      Values: [ /* required */
                        'STRING_VALUE',
                        /* more items */
                      ],
                      DimensionType: INCLUSIVE | EXCLUSIVE
                    },
                    GPSPoint: {
                      Coordinates: { /* required */
                        Latitude: 'NUMBER_VALUE', /* required */
                        Longitude: 'NUMBER_VALUE' /* required */
                      },
                      RangeInKilometers: 'NUMBER_VALUE'
                    }
                  },
                  Metrics: {
                    '<__string>': {
                      ComparisonOperator: 'STRING_VALUE', /* required */
                      Value: 'NUMBER_VALUE' /* required */
                    },
                    /* '<__string>': ... */
                  },
                  UserAttributes: {
                    '<__string>': {
                      Values: [ /* required */
                        'STRING_VALUE',
                        /* more items */
                      ],
                      AttributeType: INCLUSIVE | EXCLUSIVE | CONTAINS | BEFORE | AFTER | ON | BETWEEN
                    },
                    /* '<__string>': ... */
                  }
                }
              },
              /* more items */
            ],
            Operator: ALL | ANY
          },
          EvaluationWaitTime: {
            WaitFor: 'STRING_VALUE',
            WaitUntil: 'STRING_VALUE'
          },
          FalseActivity: 'STRING_VALUE',
          TrueActivity: 'STRING_VALUE'
        },
        ContactCenter: {
          NextActivity: 'STRING_VALUE'
        },
        Description: 'STRING_VALUE',
        EMAIL: {
          MessageConfig: {
            FromAddress: 'STRING_VALUE'
          },
          NextActivity: 'STRING_VALUE',
          TemplateName: 'STRING_VALUE',
          TemplateVersion: 'STRING_VALUE'
        },
        Holdout: {
          Percentage: 'NUMBER_VALUE', /* required */
          NextActivity: 'STRING_VALUE'
        },
        MultiCondition: {
          Branches: [
            {
              Condition: {
                EventCondition: {
                  Dimensions: {
                    Attributes: {
                      '<__string>': {
                        Values: [ /* required */
                          'STRING_VALUE',
                          /* more items */
                        ],
                        AttributeType: INCLUSIVE | EXCLUSIVE | CONTAINS | BEFORE | AFTER | ON | BETWEEN
                      },
                      /* '<__string>': ... */
                    },
                    EventType: {
                      Values: [ /* required */
                        'STRING_VALUE',
                        /* more items */
                      ],
                      DimensionType: INCLUSIVE | EXCLUSIVE
                    },
                    Metrics: {
                      '<__string>': {
                        ComparisonOperator: 'STRING_VALUE', /* required */
                        Value: 'NUMBER_VALUE' /* required */
                      },
                      /* '<__string>': ... */
                    }
                  },
                  MessageActivity: 'STRING_VALUE'
                },
                SegmentCondition: {
                  SegmentId: 'STRING_VALUE' /* required */
                },
                SegmentDimensions: {
                  Attributes: {
                    '<__string>': {
                      Values: [ /* required */
                        'STRING_VALUE',
                        /* more items */
                      ],
                      AttributeType: INCLUSIVE | EXCLUSIVE | CONTAINS | BEFORE | AFTER | ON | BETWEEN
                    },
                    /* '<__string>': ... */
                  },
                  Behavior: {
                    Recency: {
                      Duration: HR_24 | DAY_7 | DAY_14 | DAY_30, /* required */
                      RecencyType: ACTIVE | INACTIVE /* required */
                    }
                  },
                  Demographic: {
                    AppVersion: {
                      Values: [ /* required */
                        'STRING_VALUE',
                        /* more items */
                      ],
                      DimensionType: INCLUSIVE | EXCLUSIVE
                    },
                    Channel: {
                      Values: [ /* required */
                        'STRING_VALUE',
                        /* more items */
                      ],
                      DimensionType: INCLUSIVE | EXCLUSIVE
                    },
                    DeviceType: {
                      Values: [ /* required */
                        'STRING_VALUE',
                        /* more items */
                      ],
                      DimensionType: INCLUSIVE | EXCLUSIVE
                    },
                    Make: {
                      Values: [ /* required */
                        'STRING_VALUE',
                        /* more items */
                      ],
                      DimensionType: INCLUSIVE | EXCLUSIVE
                    },
                    Model: {
                      Values: [ /* required */
                        'STRING_VALUE',
                        /* more items */
                      ],
                      DimensionType: INCLUSIVE | EXCLUSIVE
                    },
                    Platform: {
                      Values: [ /* required */
                        'STRING_VALUE',
                        /* more items */
                      ],
                      DimensionType: INCLUSIVE | EXCLUSIVE
                    }
                  },
                  Location: {
                    Country: {
                      Values: [ /* required */
                        'STRING_VALUE',
                        /* more items */
                      ],
                      DimensionType: INCLUSIVE | EXCLUSIVE
                    },
                    GPSPoint: {
                      Coordinates: { /* required */
                        Latitude: 'NUMBER_VALUE', /* required */
                        Longitude: 'NUMBER_VALUE' /* required */
                      },
                      RangeInKilometers: 'NUMBER_VALUE'
                    }
                  },
                  Metrics: {
                    '<__string>': {
                      ComparisonOperator: 'STRING_VALUE', /* required */
                      Value: 'NUMBER_VALUE' /* required */
                    },
                    /* '<__string>': ... */
                  },
                  UserAttributes: {
                    '<__string>': {
                      Values: [ /* required */
                        'STRING_VALUE',
                        /* more items */
                      ],
                      AttributeType: INCLUSIVE | EXCLUSIVE | CONTAINS | BEFORE | AFTER | ON | BETWEEN
                    },
                    /* '<__string>': ... */
                  }
                }
              },
              NextActivity: 'STRING_VALUE'
            },
            /* more items */
          ],
          DefaultActivity: 'STRING_VALUE',
          EvaluationWaitTime: {
            WaitFor: 'STRING_VALUE',
            WaitUntil: 'STRING_VALUE'
          }
        },
        PUSH: {
          MessageConfig: {
            TimeToLive: 'STRING_VALUE'
          },
          NextActivity: 'STRING_VALUE',
          TemplateName: 'STRING_VALUE',
          TemplateVersion: 'STRING_VALUE'
        },
        RandomSplit: {
          Branches: [
            {
              NextActivity: 'STRING_VALUE',
              Percentage: 'NUMBER_VALUE'
            },
            /* more items */
          ]
        },
        SMS: {
          MessageConfig: {
            EntityId: 'STRING_VALUE',
            MessageType: TRANSACTIONAL | PROMOTIONAL,
            OriginationNumber: 'STRING_VALUE',
            SenderId: 'STRING_VALUE',
            TemplateId: 'STRING_VALUE'
          },
          NextActivity: 'STRING_VALUE',
          TemplateName: 'STRING_VALUE',
          TemplateVersion: 'STRING_VALUE'
        },
        Wait: {
          NextActivity: 'STRING_VALUE',
          WaitTime: {
            WaitFor: 'STRING_VALUE',
            WaitUntil: 'STRING_VALUE'
          }
        }
      },
      /* '<__string>': ... */
    },
    ClosedDays: {
      CUSTOM: [
        {
          EndDateTime: 'STRING_VALUE',
          Name: 'STRING_VALUE',
          StartDateTime: 'STRING_VALUE'
        },
        /* more items */
      ],
      EMAIL: [
        {
          EndDateTime: 'STRING_VALUE',
          Name: 'STRING_VALUE',
          StartDateTime: 'STRING_VALUE'
        },
        /* more items */
      ],
      PUSH: [
        {
          EndDateTime: 'STRING_VALUE',
          Name: 'STRING_VALUE',
          StartDateTime: 'STRING_VALUE'
        },
        /* more items */
      ],
      SMS: [
        {
          EndDateTime: 'STRING_VALUE',
          Name: 'STRING_VALUE',
          StartDateTime: 'STRING_VALUE'
        },
        /* more items */
      ],
      VOICE: [
        {
          EndDateTime: 'STRING_VALUE',
          Name: 'STRING_VALUE',
          StartDateTime: 'STRING_VALUE'
        },
        /* more items */
      ]
    },
    CreationDate: 'STRING_VALUE',
    JourneyChannelSettings: {
      ConnectCampaignArn: 'STRING_VALUE',
      ConnectCampaignExecutionRoleArn: 'STRING_VALUE'
    },
    LastModifiedDate: 'STRING_VALUE',
    Limits: {
      DailyCap: 'NUMBER_VALUE',
      EndpointReentryCap: 'NUMBER_VALUE',
      EndpointReentryInterval: 'STRING_VALUE',
      MessagesPerSecond: 'NUMBER_VALUE',
      TimeframeCap: {
        Cap: 'NUMBER_VALUE',
        Days: 'NUMBER_VALUE'
      },
      TotalCap: 'NUMBER_VALUE'
    },
    LocalTime: true || false,
    OpenHours: {
      CUSTOM: {
        '<DayOfWeek>': [
          {
            EndTime: 'STRING_VALUE',
            StartTime: 'STRING_VALUE'
          },
          /* more items */
        ],
        /* '<DayOfWeek>': ... */
      },
      EMAIL: {
        '<DayOfWeek>': [
          {
            EndTime: 'STRING_VALUE',
            StartTime: 'STRING_VALUE'
          },
          /* more items */
        ],
        /* '<DayOfWeek>': ... */
      },
      PUSH: {
        '<DayOfWeek>': [
          {
            EndTime: 'STRING_VALUE',
            StartTime: 'STRING_VALUE'
          },
          /* more items */
        ],
        /* '<DayOfWeek>': ... */
      },
      SMS: {
        '<DayOfWeek>': [
          {
            EndTime: 'STRING_VALUE',
            StartTime: 'STRING_VALUE'
          },
          /* more items */
        ],
        /* '<DayOfWeek>': ... */
      },
      VOICE: {
        '<DayOfWeek>': [
          {
            EndTime: 'STRING_VALUE',
            StartTime: 'STRING_VALUE'
          },
          /* more items */
        ],
        /* '<DayOfWeek>': ... */
      }
    },
    QuietTime: {
      End: 'STRING_VALUE',
      Start: 'STRING_VALUE'
    },
    RefreshFrequency: 'STRING_VALUE',
    RefreshOnSegmentUpdate: true || false,
    Schedule: {
      EndTime: new Date || 'Wed Dec 31 1969 16:00:00 GMT-0800 (PST)' || 123456789,
      StartTime: new Date || 'Wed Dec 31 1969 16:00:00 GMT-0800 (PST)' || 123456789,
      Timezone: 'STRING_VALUE'
    },
    SendingSchedule: true || false,
    StartActivity: 'STRING_VALUE',
    StartCondition: {
      Description: 'STRING_VALUE',
      EventStartCondition: {
        EventFilter: {
          Dimensions: { /* required */
            Attributes: {
              '<__string>': {
                Values: [ /* required */
                  'STRING_VALUE',
                  /* more items */
                ],
                AttributeType: INCLUSIVE | EXCLUSIVE | CONTAINS | BEFORE | AFTER | ON | BETWEEN
              },
              /* '<__string>': ... */
            },
            EventType: {
              Values: [ /* required */
                'STRING_VALUE',
                /* more items */
              ],
              DimensionType: INCLUSIVE | EXCLUSIVE
            },
            Metrics: {
              '<__string>': {
                ComparisonOperator: 'STRING_VALUE', /* required */
                Value: 'NUMBER_VALUE' /* required */
              },
              /* '<__string>': ... */
            }
          },
          FilterType: SYSTEM | ENDPOINT /* required */
        },
        SegmentId: 'STRING_VALUE'
      },
      SegmentStartCondition: {
        SegmentId: 'STRING_VALUE' /* required */
      }
    },
    State: DRAFT | ACTIVE | COMPLETED | CANCELLED | CLOSED | PAUSED,
    TimezoneEstimationMethods: [
      PHONE_NUMBER | POSTAL_CODE,
      /* more items */
    ],
    WaitForQuietTime: true || false
  }
};
pinpoint.createJourney(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • WriteJourneyRequest — (map)

      Specifies the configuration and other settings for a journey.

      • Activities — (map<map>)

        A map that contains a set of Activity objects, one object for each activity in the journey. For each Activity object, the key is the unique identifier (string) for an activity and the value is the settings for the activity. An activity identifier can contain a maximum of 100 characters. The characters must be alphanumeric characters.

        • CUSTOM — (map)

          The settings for a custom message activity. This type of activity calls an AWS Lambda function or web hook that sends messages to participants.

          • DeliveryUri — (String)

            The destination to send the campaign or treatment to. This value can be one of the following:

            • The name or Amazon Resource Name (ARN) of an AWS Lambda function to invoke to handle delivery of the campaign or treatment.

            • The URL for a web application or service that supports HTTPS and can receive the message. The URL has to be a full URL, including the HTTPS protocol.

          • EndpointTypes — (Array<String>)

            The types of endpoints to send the custom message to. Each valid value maps to a type of channel that you can associate with an endpoint by using the ChannelType property of an endpoint.

          • MessageConfig — (map)

            Specifies the message data included in a custom channel message that's sent to participants in a journey.

            • Data — (String)

              The message content that's passed to an AWS Lambda function or to a web hook.

          • NextActivity — (String)

            The unique identifier for the next activity to perform, after Amazon Pinpoint calls the AWS Lambda function or web hook.

          • TemplateName — (String)

            The name of the custom message template to use for the message. If specified, this value must match the name of an existing message template.

          • TemplateVersion — (String)

            The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

            If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

        • ConditionalSplit — (map)

          The settings for a yes/no split activity. This type of activity sends participants down one of two paths in a journey, based on conditions that you specify.

          • Condition — (map)

            The conditions that define the paths for the activity, and the relationship between the conditions.

            • Conditions — (Array<map>)

              The conditions to evaluate for the activity.

              • EventCondition — (map)

                The dimension settings for the event that's associated with the activity.

                • Dimensions — (map)

                  The dimensions for the event filter to use for the activity.

                  • Attributes — (map<map>)

                    One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                    • AttributeType — (String)

                      The type of segment dimension to use. Valid values are:

                      • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                      • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                      • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                      • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                      • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                      • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                      • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                      • Possible values include:
                        • "INCLUSIVE"
                        • "EXCLUSIVE"
                        • "CONTAINS"
                        • "BEFORE"
                        • "AFTER"
                        • "ON"
                        • "BETWEEN"
                      • Valuesrequired — (Array<String>)

                        The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                    • EventType — (map)

                      The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                      • DimensionType — (String)

                        The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                        Possible values include:
                        • "INCLUSIVE"
                        • "EXCLUSIVE"
                      • Valuesrequired — (Array<String>)

                        The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                    • Metrics — (map<map>)

                      One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                      • ComparisonOperatorrequired — (String)

                        The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                      • Valuerequired — (Float)

                        The value to compare.

                  • MessageActivity — (String)

                    The message identifier (message_id) for the message to use when determining whether message events meet the condition.

                • SegmentCondition — (map)

                  The segment that's associated with the activity.

                  • SegmentIdrequired — (String)

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

                • SegmentDimensions — (map)

                  The dimension settings for the segment that's associated with the activity.

                  • Attributes — (map<map>)

                    One or more custom attributes to use as criteria for the segment.

                    • AttributeType — (String)

                      The type of segment dimension to use. Valid values are:

                      • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                      • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                      • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                      • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                      • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                      • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                      • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                      • Possible values include:
                        • "INCLUSIVE"
                        • "EXCLUSIVE"
                        • "CONTAINS"
                        • "BEFORE"
                        • "AFTER"
                        • "ON"
                        • "BETWEEN"
                      • Valuesrequired — (Array<String>)

                        The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                    • Behavior — (map)

                      The behavior-based criteria, such as how recently users have used your app, for the segment.

                      • Recency — (map)

                        The dimension settings that are based on how recently an endpoint was active.

                        • Durationrequired — (String)

                          The duration to use when determining whether an endpoint is active or inactive.

                          Possible values include:
                          • "HR_24"
                          • "DAY_7"
                          • "DAY_14"
                          • "DAY_30"
                        • RecencyTyperequired — (String)

                          The type of recency dimension to use for the segment. Valid values are: ACTIVE, endpoints that were active within the specified duration are included in the segment; and, INACTIVE, endpoints that weren't active within the specified duration are included in the segment.

                          Possible values include:
                          • "ACTIVE"
                          • "INACTIVE"
                    • Demographic — (map)

                      The demographic-based criteria, such as device platform, for the segment.

                      • AppVersion — (map)

                        The app version criteria for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • Channel — (map)

                        The channel criteria for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • DeviceType — (map)

                        The device type criteria for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • Make — (map)

                        The device make criteria for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • Model — (map)

                        The device model criteria for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • Platform — (map)

                        The device platform criteria for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                    • Location — (map)

                      The location-based criteria, such as region or GPS coordinates, for the segment.

                      • Country — (map)

                        The country or region code, in ISO 3166-1 alpha-2 format, for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • GPSPoint — (map)

                        The GPS location and range for the segment.

                        • Coordinatesrequired — (map)

                          The GPS coordinates to measure distance from.

                          • Latituderequired — (Float)

                            The latitude coordinate of the location.

                          • Longituderequired — (Float)

                            The longitude coordinate of the location.

                        • RangeInKilometers — (Float)

                          The range, in kilometers, from the GPS coordinates.

                    • Metrics — (map<map>)

                      One or more custom metrics to use as criteria for the segment.

                      • ComparisonOperatorrequired — (String)

                        The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                      • Valuerequired — (Float)

                        The value to compare.

                    • UserAttributes — (map<map>)

                      One or more custom user attributes to use as criteria for the segment.

                      • AttributeType — (String)

                        The type of segment dimension to use. Valid values are:

                        • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                        • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                        • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                        • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                        • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                        • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                        • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                        • Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                          • "CONTAINS"
                          • "BEFORE"
                          • "AFTER"
                          • "ON"
                          • "BETWEEN"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                  • Operator — (String)

                    Specifies how to handle multiple conditions for the activity. For example, if you specify two conditions for an activity, whether both or only one of the conditions must be met for the activity to be performed.

                    Possible values include:
                    • "ALL"
                    • "ANY"
                • EvaluationWaitTime — (map)

                  The amount of time to wait before determining whether the conditions are met, or the date and time when Amazon Pinpoint determines whether the conditions are met.

                  • WaitFor — (String)

                    The amount of time to wait, as a duration in ISO 8601 format, before determining whether the activity's conditions have been met or moving participants to the next activity in the journey.

                  • WaitUntil — (String)

                    The date and time, in ISO 8601 format, when Amazon Pinpoint determines whether the activity's conditions have been met or the activity moves participants to the next activity in the journey.

                • FalseActivity — (String)

                  The unique identifier for the activity to perform if the conditions aren't met.

                • TrueActivity — (String)

                  The unique identifier for the activity to perform if the conditions are met.

              • Description — (String)

                The custom description of the activity.

              • EMAIL — (map)

                The settings for an email activity. This type of activity sends an email message to participants.

                • MessageConfig — (map)

                  Specifies the sender address for an email message that's sent to participants in the journey.

                  • FromAddress — (String)

                    The verified email address to send the email message from. The default address is the FromAddress specified for the email channel for the application.

                • NextActivity — (String)

                  The unique identifier for the next activity to perform, after the message is sent.

                • TemplateName — (String)

                  The name of the email message template to use for the message. If specified, this value must match the name of an existing message template.

                • TemplateVersion — (String)

                  The unique identifier for the version of the email template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • Holdout — (map)

                The settings for a holdout activity. This type of activity stops a journey for a specified percentage of participants.

                • NextActivity — (String)

                  The unique identifier for the next activity to perform, after performing the holdout activity.

                • Percentagerequired — (Integer)

                  The percentage of participants who shouldn't continue the journey.

                  To determine which participants are held out, Amazon Pinpoint applies a probability-based algorithm to the percentage that you specify. Therefore, the actual percentage of participants who are held out may not be equal to the percentage that you specify.

              • MultiCondition — (map)

                The settings for a multivariate split activity. This type of activity sends participants down one of as many as five paths (including a default Else path) in a journey, based on conditions that you specify.

                • Branches — (Array<map>)

                  The paths for the activity, including the conditions for entering each path and the activity to perform for each path.

                  • Condition — (map)

                    The condition to evaluate for the activity path.

                    • EventCondition — (map)

                      The dimension settings for the event that's associated with the activity.

                      • Dimensions — (map)

                        The dimensions for the event filter to use for the activity.

                        • Attributes — (map<map>)

                          One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                          • AttributeType — (String)

                            The type of segment dimension to use. Valid values are:

                            • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                            • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                            • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                            • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                            • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                            • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                            • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                            • Possible values include:
                              • "INCLUSIVE"
                              • "EXCLUSIVE"
                              • "CONTAINS"
                              • "BEFORE"
                              • "AFTER"
                              • "ON"
                              • "BETWEEN"
                            • Valuesrequired — (Array<String>)

                              The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                          • EventType — (map)

                            The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                            • DimensionType — (String)

                              The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                              Possible values include:
                              • "INCLUSIVE"
                              • "EXCLUSIVE"
                            • Valuesrequired — (Array<String>)

                              The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                          • Metrics — (map<map>)

                            One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                            • ComparisonOperatorrequired — (String)

                              The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                            • Valuerequired — (Float)

                              The value to compare.

                        • MessageActivity — (String)

                          The message identifier (message_id) for the message to use when determining whether message events meet the condition.

                      • SegmentCondition — (map)

                        The segment that's associated with the activity.

                        • SegmentIdrequired — (String)

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

                      • SegmentDimensions — (map)

                        The dimension settings for the segment that's associated with the activity.

                        • Attributes — (map<map>)

                          One or more custom attributes to use as criteria for the segment.

                          • AttributeType — (String)

                            The type of segment dimension to use. Valid values are:

                            • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                            • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                            • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                            • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                            • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                            • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                            • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                            • Possible values include:
                              • "INCLUSIVE"
                              • "EXCLUSIVE"
                              • "CONTAINS"
                              • "BEFORE"
                              • "AFTER"
                              • "ON"
                              • "BETWEEN"
                            • Valuesrequired — (Array<String>)

                              The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                          • Behavior — (map)

                            The behavior-based criteria, such as how recently users have used your app, for the segment.

                            • Recency — (map)

                              The dimension settings that are based on how recently an endpoint was active.

                              • Durationrequired — (String)

                                The duration to use when determining whether an endpoint is active or inactive.

                                Possible values include:
                                • "HR_24"
                                • "DAY_7"
                                • "DAY_14"
                                • "DAY_30"
                              • RecencyTyperequired — (String)

                                The type of recency dimension to use for the segment. Valid values are: ACTIVE, endpoints that were active within the specified duration are included in the segment; and, INACTIVE, endpoints that weren't active within the specified duration are included in the segment.

                                Possible values include:
                                • "ACTIVE"
                                • "INACTIVE"
                          • Demographic — (map)

                            The demographic-based criteria, such as device platform, for the segment.

                            • AppVersion — (map)

                              The app version criteria for the segment.

                              • DimensionType — (String)

                                The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                Possible values include:
                                • "INCLUSIVE"
                                • "EXCLUSIVE"
                              • Valuesrequired — (Array<String>)

                                The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                            • Channel — (map)

                              The channel criteria for the segment.

                              • DimensionType — (String)

                                The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                Possible values include:
                                • "INCLUSIVE"
                                • "EXCLUSIVE"
                              • Valuesrequired — (Array<String>)

                                The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                            • DeviceType — (map)

                              The device type criteria for the segment.

                              • DimensionType — (String)

                                The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                Possible values include:
                                • "INCLUSIVE"
                                • "EXCLUSIVE"
                              • Valuesrequired — (Array<String>)

                                The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                            • Make — (map)

                              The device make criteria for the segment.

                              • DimensionType — (String)

                                The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                Possible values include:
                                • "INCLUSIVE"
                                • "EXCLUSIVE"
                              • Valuesrequired — (Array<String>)

                                The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                            • Model — (map)

                              The device model criteria for the segment.

                              • DimensionType — (String)

                                The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                Possible values include:
                                • "INCLUSIVE"
                                • "EXCLUSIVE"
                              • Valuesrequired — (Array<String>)

                                The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                            • Platform — (map)

                              The device platform criteria for the segment.

                              • DimensionType — (String)

                                The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                Possible values include:
                                • "INCLUSIVE"
                                • "EXCLUSIVE"
                              • Valuesrequired — (Array<String>)

                                The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                          • Location — (map)

                            The location-based criteria, such as region or GPS coordinates, for the segment.

                            • Country — (map)

                              The country or region code, in ISO 3166-1 alpha-2 format, for the segment.

                              • DimensionType — (String)

                                The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                Possible values include:
                                • "INCLUSIVE"
                                • "EXCLUSIVE"
                              • Valuesrequired — (Array<String>)

                                The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                            • GPSPoint — (map)

                              The GPS location and range for the segment.

                              • Coordinatesrequired — (map)

                                The GPS coordinates to measure distance from.

                                • Latituderequired — (Float)

                                  The latitude coordinate of the location.

                                • Longituderequired — (Float)

                                  The longitude coordinate of the location.

                              • RangeInKilometers — (Float)

                                The range, in kilometers, from the GPS coordinates.

                          • Metrics — (map<map>)

                            One or more custom metrics to use as criteria for the segment.

                            • ComparisonOperatorrequired — (String)

                              The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                            • Valuerequired — (Float)

                              The value to compare.

                          • UserAttributes — (map<map>)

                            One or more custom user attributes to use as criteria for the segment.

                            • AttributeType — (String)

                              The type of segment dimension to use. Valid values are:

                              • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                              • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                              • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                              • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                              • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                              • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                              • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                              • Possible values include:
                                • "INCLUSIVE"
                                • "EXCLUSIVE"
                                • "CONTAINS"
                                • "BEFORE"
                                • "AFTER"
                                • "ON"
                                • "BETWEEN"
                              • Valuesrequired — (Array<String>)

                                The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                        • NextActivity — (String)

                          The unique identifier for the next activity to perform, after completing the activity for the path.

                      • DefaultActivity — (String)

                        The unique identifier for the activity to perform for participants who don't meet any of the conditions specified for other paths in the activity.

                      • EvaluationWaitTime — (map)

                        The amount of time to wait or the date and time when Amazon Pinpoint determines whether the conditions are met.

                        • WaitFor — (String)

                          The amount of time to wait, as a duration in ISO 8601 format, before determining whether the activity's conditions have been met or moving participants to the next activity in the journey.

                        • WaitUntil — (String)

                          The date and time, in ISO 8601 format, when Amazon Pinpoint determines whether the activity's conditions have been met or the activity moves participants to the next activity in the journey.

                    • PUSH — (map)

                      The settings for a push notification activity. This type of activity sends a push notification to participants.

                      • MessageConfig — (map)

                        Specifies the time to live (TTL) value for push notifications that are sent to participants in a journey.

                        • TimeToLive — (String)

                          The number of seconds that the push notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                          This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

                      • NextActivity — (String)

                        The unique identifier for the next activity to perform, after the message is sent.

                      • TemplateName — (String)

                        The name of the push notification template to use for the message. If specified, this value must match the name of an existing message template.

                      • TemplateVersion — (String)

                        The unique identifier for the version of the push notification template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                        If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

                    • RandomSplit — (map)

                      The settings for a random split activity. This type of activity randomly sends specified percentages of participants down one of as many as five paths in a journey, based on conditions that you specify.

                      • Branches — (Array<map>)

                        The paths for the activity, including the percentage of participants to enter each path and the activity to perform for each path.

                        • NextActivity — (String)

                          The unique identifier for the next activity to perform, after completing the activity for the path.

                        • Percentage — (Integer)

                          The percentage of participants to send down the activity path.

                          To determine which participants are sent down each path, Amazon Pinpoint applies a probability-based algorithm to the percentages that you specify for the paths. Therefore, the actual percentage of participants who are sent down a path may not be equal to the percentage that you specify.

                    • SMS — (map)

                      The settings for an SMS activity. This type of activity sends a text message to participants.

                      • MessageConfig — (map)

                        Specifies the sender ID and message type for an SMS message that's sent to participants in a journey.

                        • MessageType — (String)

                          The SMS message type. Valid values are TRANSACTIONAL (for messages that are critical or time-sensitive, such as a one-time passwords) and PROMOTIONAL (for messsages that aren't critical or time-sensitive, such as marketing messages).

                          Possible values include:
                          • "TRANSACTIONAL"
                          • "PROMOTIONAL"
                        • OriginationNumber — (String)

                          The long code to send the SMS message from. This value should be one of the dedicated long codes that's assigned to your AWS account. Although it isn't required, we recommend that you specify the long code using an E.164 format to ensure prompt and accurate delivery of the message. For example, +12065550100.

                        • SenderId — (String)

                          The sender ID to display as the sender of the message on a recipient's device. Support for sender IDs varies by country or region. For more information, see Supported Countries and Regions in the Amazon Pinpoint User Guide.

                        • EntityId — (String)

                          The entity ID or Principal Entity (PE) id received from the regulatory body for sending SMS in your country.

                        • TemplateId — (String)

                          The template ID received from the regulatory body for sending SMS in your country.

                      • NextActivity — (String)

                        The unique identifier for the next activity to perform, after the message is sent.

                      • TemplateName — (String)

                        The name of the SMS message template to use for the message. If specified, this value must match the name of an existing message template.

                      • TemplateVersion — (String)

                        The unique identifier for the version of the SMS template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                        If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

                    • Wait — (map)

                      The settings for a wait activity. This type of activity waits for a certain amount of time or until a specific date and time before moving participants to the next activity in a journey.

                      • NextActivity — (String)

                        The unique identifier for the next activity to perform, after performing the wait activity.

                      • WaitTime — (map)

                        The amount of time to wait or the date and time when the activity moves participants to the next activity in the journey.

                        • WaitFor — (String)

                          The amount of time to wait, as a duration in ISO 8601 format, before determining whether the activity's conditions have been met or moving participants to the next activity in the journey.

                        • WaitUntil — (String)

                          The date and time, in ISO 8601 format, when Amazon Pinpoint determines whether the activity's conditions have been met or the activity moves participants to the next activity in the journey.

                    • ContactCenter — (map)

                      The settings for a connect activity. This type of activity initiates a contact center call to participants.

                      • NextActivity — (String)

                        The unique identifier for the next activity to perform after the this activity.

                  • CreationDate — (String)

                    The date, in ISO 8601 format, when the journey was created.

                  • LastModifiedDate — (String)

                    The date, in ISO 8601 format, when the journey was last modified.

                  • Limits — (map)

                    The messaging and entry limits for the journey.

                    • DailyCap — (Integer)

                      The maximum number of messages that the journey can send to a single participant during a 24-hour period. The maximum value is 100.

                    • EndpointReentryCap — (Integer)

                      The maximum number of times that a participant can enter the journey. The maximum value is 100. To allow participants to enter the journey an unlimited number of times, set this value to 0.

                    • MessagesPerSecond — (Integer)

                      The maximum number of messages that the journey can send each second.

                    • EndpointReentryInterval — (String)

                      Minimum time that must pass before an endpoint can re-enter a given journey. The duration should use an ISO 8601 format, such as PT1H.

                    • TimeframeCap — (map)

                      The number of messages that an endpoint can receive during the specified timeframe.

                      • Cap — (Integer)

                        The maximum number of messages that all journeys can send to an endpoint during the specified timeframe. The maximum value is 100. If set to 0, this limit will not apply.

                      • Days — (Integer)

                        The length of the timeframe in days. The maximum value is 30. If set to 0, this limit will not apply.

                    • TotalCap — (Integer)

                      The maximum number of messages a journey can sent to a single endpoint. The maximum value is 100. If set to 0, this limit will not apply.

                  • LocalTime — (Boolean)

                    Specifies whether the journey's scheduled start and end times use each participant's local time. To base the schedule on each participant's local time, set this value to true.

                  • Namerequired — (String)

                    The name of the journey. A journey name can contain a maximum of 150 characters. The characters can be alphanumeric characters or symbols, such as underscores (_) or hyphens (-). A journey name can't contain any spaces.

                  • QuietTime — (map)

                    The quiet time settings for the journey. Quiet time is a specific time range when a journey doesn't send messages to participants, if all the following conditions are met:

                    • The EndpointDemographic.Timezone property of the endpoint for the participant is set to a valid value.

                    • The current time in the participant's time zone is later than or equal to the time specified by the QuietTime.Start property for the journey.

                    • The current time in the participant's time zone is earlier than or equal to the time specified by the QuietTime.End property for the journey.

                    If any of the preceding conditions isn't met, the participant will receive messages from the journey, even if quiet time is enabled.

                    • End — (String)

                      The specific time when quiet time ends. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

                    • Start — (String)

                      The specific time when quiet time begins. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

                  • RefreshFrequency — (String)

                    The frequency with which Amazon Pinpoint evaluates segment and event data for the journey, as a duration in ISO 8601 format.

                  • Schedule — (map)

                    The schedule settings for the journey.

                    • EndTime — (Date)

                      The scheduled time, in ISO 8601 format, when the journey ended or will end.

                    • StartTime — (Date)

                      The scheduled time, in ISO 8601 format, when the journey began or will begin.

                    • Timezone — (String)

                      The starting UTC offset for the journey schedule, if the value of the journey's LocalTime property is true. Valid values are: UTC, UTC+01, UTC+02, UTC+03, UTC+03:30, UTC+04, UTC+04:30, UTC+05, UTC+05:30, UTC+05:45, UTC+06, UTC+06:30, UTC+07, UTC+08, UTC+08:45, UTC+09, UTC+09:30, UTC+10, UTC+10:30, UTC+11, UTC+12, UTC+12:45, UTC+13, UTC+13:45, UTC-02, UTC-02:30, UTC-03, UTC-03:30, UTC-04, UTC-05, UTC-06, UTC-07, UTC-08, UTC-09, UTC-09:30, UTC-10, and UTC-11.

                  • StartActivity — (String)

                    The unique identifier for the first activity in the journey. The identifier for this activity can contain a maximum of 128 characters. The characters must be alphanumeric characters.

                  • StartCondition — (map)

                    The segment that defines which users are participants in the journey.

                    • Description — (String)

                      The custom description of the condition.

                    • EventStartCondition — (map)

                      Specifies the settings for an event that causes a journey activity to start.

                      • EventFilter — (map)

                        Specifies the settings for an event that causes a campaign to be sent or a journey activity to be performed.

                        • Dimensionsrequired — (map)

                          The dimensions for the event filter to use for the campaign or the journey activity.

                          • Attributes — (map<map>)

                            One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                            • AttributeType — (String)

                              The type of segment dimension to use. Valid values are:

                              • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                              • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                              • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                              • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                              • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                              • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                              • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                              • Possible values include:
                                • "INCLUSIVE"
                                • "EXCLUSIVE"
                                • "CONTAINS"
                                • "BEFORE"
                                • "AFTER"
                                • "ON"
                                • "BETWEEN"
                              • Valuesrequired — (Array<String>)

                                The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                            • EventType — (map)

                              The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                              • DimensionType — (String)

                                The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                Possible values include:
                                • "INCLUSIVE"
                                • "EXCLUSIVE"
                              • Valuesrequired — (Array<String>)

                                The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                            • Metrics — (map<map>)

                              One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                              • ComparisonOperatorrequired — (String)

                                The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                              • Valuerequired — (Float)

                                The value to compare.

                          • FilterTyperequired — (String)

                            The type of event that causes the campaign to be sent or the journey activity to be performed. Valid values are: SYSTEM, sends the campaign or performs the activity when a system event occurs; and, ENDPOINT, sends the campaign or performs the activity when an endpoint event (Events resource) occurs.

                            Possible values include:
                            • "SYSTEM"
                            • "ENDPOINT"
                        • SegmentId — (String)
                      • SegmentStartCondition — (map)

                        The segment that's associated with the first activity in the journey. This segment determines which users are participants in the journey.

                        • SegmentIdrequired — (String)

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

                    • State — (String)

                      The status of the journey. Valid values are:

                      • DRAFT - Saves the journey and doesn't publish it.

                      • ACTIVE - Saves and publishes the journey. Depending on the journey's schedule, the journey starts running immediately or at the scheduled start time. If a journey's status is ACTIVE, you can't add, change, or remove activities from it.

                      PAUSED, CANCELLED, COMPLETED, and CLOSED states are not supported in requests to create or update a journey. To cancel, pause, or resume a journey, use the Journey State resource.

                      Possible values include:
                      • "DRAFT"
                      • "ACTIVE"
                      • "COMPLETED"
                      • "CANCELLED"
                      • "CLOSED"
                      • "PAUSED"
                    • WaitForQuietTime — (Boolean)

                      Specifies whether endpoints in quiet hours should enter a wait till the end of their quiet hours.

                    • RefreshOnSegmentUpdate — (Boolean)

                      Indicates whether the journey participants should be refreshed when a segment is updated.

                    • JourneyChannelSettings — (map)

                      The channel-specific configurations for the journey.

                      • ConnectCampaignArn — (String)

                        Amazon Resource Name (ARN) of the Connect Campaign.

                      • ConnectCampaignExecutionRoleArn — (String)

                        IAM role ARN to be assumed when invoking Connect campaign execution APIs for dialing.

                    • SendingSchedule — (Boolean)

                      Indicates if journey has Advance Quiet Time enabled. This flag should be set to true in order to allow using OpenHours and ClosedDays.

                    • OpenHours — (map)

                      The time when journey allow to send messages. QuietTime should be configured first and SendingSchedule should be set to true.

                      • EMAIL — (map<Array<map>>)

                        Specifies the schedule settings for the email channel.

                        • StartTime — (String)

                          The start of the scheduled time, in ISO 8601 format, when the channel can send messages.

                        • EndTime — (String)

                          The end of the scheduled time, in ISO 8601 format, when the channel can't send messages.

                      • SMS — (map<Array<map>>)

                        Specifies the schedule settings for the SMS channel.

                        • StartTime — (String)

                          The start of the scheduled time, in ISO 8601 format, when the channel can send messages.

                        • EndTime — (String)

                          The end of the scheduled time, in ISO 8601 format, when the channel can't send messages.

                      • PUSH — (map<Array<map>>)

                        Specifies the schedule settings for the push channel.

                        • StartTime — (String)

                          The start of the scheduled time, in ISO 8601 format, when the channel can send messages.

                        • EndTime — (String)

                          The end of the scheduled time, in ISO 8601 format, when the channel can't send messages.

                      • VOICE — (map<Array<map>>)

                        Specifies the schedule settings for the voice channel.

                        • StartTime — (String)

                          The start of the scheduled time, in ISO 8601 format, when the channel can send messages.

                        • EndTime — (String)

                          The end of the scheduled time, in ISO 8601 format, when the channel can't send messages.

                      • CUSTOM — (map<Array<map>>)

                        Specifies the schedule settings for the custom channel.

                        • StartTime — (String)

                          The start of the scheduled time, in ISO 8601 format, when the channel can send messages.

                        • EndTime — (String)

                          The end of the scheduled time, in ISO 8601 format, when the channel can't send messages.

                    • ClosedDays — (map)

                      The time when journey will stop sending messages. QuietTime should be configured first and SendingSchedule should be set to true.

                      • EMAIL — (Array<map>)

                        Rules for the Email channel.

                        • Name — (String)

                          The name of the closed day rule.

                        • StartDateTime — (String)

                          Start DateTime ISO 8601 format

                        • EndDateTime — (String)

                          End DateTime ISO 8601 format

                      • SMS — (Array<map>)

                        Rules for the SMS channel.

                        • Name — (String)

                          The name of the closed day rule.

                        • StartDateTime — (String)

                          Start DateTime ISO 8601 format

                        • EndDateTime — (String)

                          End DateTime ISO 8601 format

                      • PUSH — (Array<map>)

                        Rules for the Push channel.

                        • Name — (String)

                          The name of the closed day rule.

                        • StartDateTime — (String)

                          Start DateTime ISO 8601 format

                        • EndDateTime — (String)

                          End DateTime ISO 8601 format

                      • VOICE — (Array<map>)

                        Rules for the Voice channel.

                        • Name — (String)

                          The name of the closed day rule.

                        • StartDateTime — (String)

                          Start DateTime ISO 8601 format

                        • EndDateTime — (String)

                          End DateTime ISO 8601 format

                      • CUSTOM — (Array<map>)

                        Rules for the Custom channel.

                        • Name — (String)

                          The name of the closed day rule.

                        • StartDateTime — (String)

                          Start DateTime ISO 8601 format

                        • EndDateTime — (String)

                          End DateTime ISO 8601 format

                    • TimezoneEstimationMethods — (Array<String>)

                      An array of time zone estimation methods, if any, to use for determining an Endpoints time zone if the Endpoint does not have a value for the Demographic.Timezone attribute.

                      • PHONE_NUMBER - A time zone is determined based on the Endpoint.Address and Endpoint.Location.Country.

                      • POSTAL_CODE - A time zone is determined based on the Endpoint.Location.PostalCode and Endpoint.Location.Country.

                        Note: POSTAL_CODE detection is only supported in the United States, United Kingdom, Australia, New Zealand, Canada, France, Italy, Spain, Germany and in regions where Amazon Pinpoint is available.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • JourneyResponse — (map)

        Provides information about the status, configuration, and other settings for a journey.

        • Activities — (map<map>)

          A map that contains a set of Activity objects, one object for each activity in the journey. For each Activity object, the key is the unique identifier (string) for an activity and the value is the settings for the activity.

          • CUSTOM — (map)

            The settings for a custom message activity. This type of activity calls an AWS Lambda function or web hook that sends messages to participants.

            • DeliveryUri — (String)

              The destination to send the campaign or treatment to. This value can be one of the following:

              • The name or Amazon Resource Name (ARN) of an AWS Lambda function to invoke to handle delivery of the campaign or treatment.

              • The URL for a web application or service that supports HTTPS and can receive the message. The URL has to be a full URL, including the HTTPS protocol.

            • EndpointTypes — (Array<String>)

              The types of endpoints to send the custom message to. Each valid value maps to a type of channel that you can associate with an endpoint by using the ChannelType property of an endpoint.

            • MessageConfig — (map)

              Specifies the message data included in a custom channel message that's sent to participants in a journey.

              • Data — (String)

                The message content that's passed to an AWS Lambda function or to a web hook.

            • NextActivity — (String)

              The unique identifier for the next activity to perform, after Amazon Pinpoint calls the AWS Lambda function or web hook.

            • TemplateName — (String)

              The name of the custom message template to use for the message. If specified, this value must match the name of an existing message template.

            • TemplateVersion — (String)

              The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

              If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

          • ConditionalSplit — (map)

            The settings for a yes/no split activity. This type of activity sends participants down one of two paths in a journey, based on conditions that you specify.

            • Condition — (map)

              The conditions that define the paths for the activity, and the relationship between the conditions.

              • Conditions — (Array<map>)

                The conditions to evaluate for the activity.

                • EventCondition — (map)

                  The dimension settings for the event that's associated with the activity.

                  • Dimensions — (map)

                    The dimensions for the event filter to use for the activity.

                    • Attributes — (map<map>)

                      One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                      • AttributeType — (String)

                        The type of segment dimension to use. Valid values are:

                        • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                        • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                        • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                        • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                        • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                        • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                        • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                        • Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                          • "CONTAINS"
                          • "BEFORE"
                          • "AFTER"
                          • "ON"
                          • "BETWEEN"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                      • EventType — (map)

                        The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • Metrics — (map<map>)

                        One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                        • ComparisonOperatorrequired — (String)

                          The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                        • Valuerequired — (Float)

                          The value to compare.

                    • MessageActivity — (String)

                      The message identifier (message_id) for the message to use when determining whether message events meet the condition.

                  • SegmentCondition — (map)

                    The segment that's associated with the activity.

                    • SegmentIdrequired — (String)

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

                  • SegmentDimensions — (map)

                    The dimension settings for the segment that's associated with the activity.

                    • Attributes — (map<map>)

                      One or more custom attributes to use as criteria for the segment.

                      • AttributeType — (String)

                        The type of segment dimension to use. Valid values are:

                        • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                        • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                        • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                        • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                        • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                        • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                        • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                        • Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                          • "CONTAINS"
                          • "BEFORE"
                          • "AFTER"
                          • "ON"
                          • "BETWEEN"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                      • Behavior — (map)

                        The behavior-based criteria, such as how recently users have used your app, for the segment.

                        • Recency — (map)

                          The dimension settings that are based on how recently an endpoint was active.

                          • Durationrequired — (String)

                            The duration to use when determining whether an endpoint is active or inactive.

                            Possible values include:
                            • "HR_24"
                            • "DAY_7"
                            • "DAY_14"
                            • "DAY_30"
                          • RecencyTyperequired — (String)

                            The type of recency dimension to use for the segment. Valid values are: ACTIVE, endpoints that were active within the specified duration are included in the segment; and, INACTIVE, endpoints that weren't active within the specified duration are included in the segment.

                            Possible values include:
                            • "ACTIVE"
                            • "INACTIVE"
                      • Demographic — (map)

                        The demographic-based criteria, such as device platform, for the segment.

                        • AppVersion — (map)

                          The app version criteria for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • Channel — (map)

                          The channel criteria for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • DeviceType — (map)

                          The device type criteria for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • Make — (map)

                          The device make criteria for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • Model — (map)

                          The device model criteria for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • Platform — (map)

                          The device platform criteria for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • Location — (map)

                        The location-based criteria, such as region or GPS coordinates, for the segment.

                        • Country — (map)

                          The country or region code, in ISO 3166-1 alpha-2 format, for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • GPSPoint — (map)

                          The GPS location and range for the segment.

                          • Coordinatesrequired — (map)

                            The GPS coordinates to measure distance from.

                            • Latituderequired — (Float)

                              The latitude coordinate of the location.

                            • Longituderequired — (Float)

                              The longitude coordinate of the location.

                          • RangeInKilometers — (Float)

                            The range, in kilometers, from the GPS coordinates.

                      • Metrics — (map<map>)

                        One or more custom metrics to use as criteria for the segment.

                        • ComparisonOperatorrequired — (String)

                          The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                        • Valuerequired — (Float)

                          The value to compare.

                      • UserAttributes — (map<map>)

                        One or more custom user attributes to use as criteria for the segment.

                        • AttributeType — (String)

                          The type of segment dimension to use. Valid values are:

                          • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                          • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                          • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                          • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                          • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                          • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                          • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                          • Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                            • "CONTAINS"
                            • "BEFORE"
                            • "AFTER"
                            • "ON"
                            • "BETWEEN"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                    • Operator — (String)

                      Specifies how to handle multiple conditions for the activity. For example, if you specify two conditions for an activity, whether both or only one of the conditions must be met for the activity to be performed.

                      Possible values include:
                      • "ALL"
                      • "ANY"
                  • EvaluationWaitTime — (map)

                    The amount of time to wait before determining whether the conditions are met, or the date and time when Amazon Pinpoint determines whether the conditions are met.

                    • WaitFor — (String)

                      The amount of time to wait, as a duration in ISO 8601 format, before determining whether the activity's conditions have been met or moving participants to the next activity in the journey.

                    • WaitUntil — (String)

                      The date and time, in ISO 8601 format, when Amazon Pinpoint determines whether the activity's conditions have been met or the activity moves participants to the next activity in the journey.

                  • FalseActivity — (String)

                    The unique identifier for the activity to perform if the conditions aren't met.

                  • TrueActivity — (String)

                    The unique identifier for the activity to perform if the conditions are met.

                • Description — (String)

                  The custom description of the activity.

                • EMAIL — (map)

                  The settings for an email activity. This type of activity sends an email message to participants.

                  • MessageConfig — (map)

                    Specifies the sender address for an email message that's sent to participants in the journey.

                    • FromAddress — (String)

                      The verified email address to send the email message from. The default address is the FromAddress specified for the email channel for the application.

                  • NextActivity — (String)

                    The unique identifier for the next activity to perform, after the message is sent.

                  • TemplateName — (String)

                    The name of the email message template to use for the message. If specified, this value must match the name of an existing message template.

                  • TemplateVersion — (String)

                    The unique identifier for the version of the email template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                    If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

                • Holdout — (map)

                  The settings for a holdout activity. This type of activity stops a journey for a specified percentage of participants.

                  • NextActivity — (String)

                    The unique identifier for the next activity to perform, after performing the holdout activity.

                  • Percentagerequired — (Integer)

                    The percentage of participants who shouldn't continue the journey.

                    To determine which participants are held out, Amazon Pinpoint applies a probability-based algorithm to the percentage that you specify. Therefore, the actual percentage of participants who are held out may not be equal to the percentage that you specify.

                • MultiCondition — (map)

                  The settings for a multivariate split activity. This type of activity sends participants down one of as many as five paths (including a default Else path) in a journey, based on conditions that you specify.

                  • Branches — (Array<map>)

                    The paths for the activity, including the conditions for entering each path and the activity to perform for each path.

                    • Condition — (map)

                      The condition to evaluate for the activity path.

                      • EventCondition — (map)

                        The dimension settings for the event that's associated with the activity.

                        • Dimensions — (map)

                          The dimensions for the event filter to use for the activity.

                          • Attributes — (map<map>)

                            One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                            • AttributeType — (String)

                              The type of segment dimension to use. Valid values are:

                              • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                              • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                              • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                              • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                              • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                              • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                              • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                              • Possible values include:
                                • "INCLUSIVE"
                                • "EXCLUSIVE"
                                • "CONTAINS"
                                • "BEFORE"
                                • "AFTER"
                                • "ON"
                                • "BETWEEN"
                              • Valuesrequired — (Array<String>)

                                The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                            • EventType — (map)

                              The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                              • DimensionType — (String)

                                The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                Possible values include:
                                • "INCLUSIVE"
                                • "EXCLUSIVE"
                              • Valuesrequired — (Array<String>)

                                The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                            • Metrics — (map<map>)

                              One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                              • ComparisonOperatorrequired — (String)

                                The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                              • Valuerequired — (Float)

                                The value to compare.

                          • MessageActivity — (String)

                            The message identifier (message_id) for the message to use when determining whether message events meet the condition.

                        • SegmentCondition — (map)

                          The segment that's associated with the activity.

                          • SegmentIdrequired — (String)

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

                        • SegmentDimensions — (map)

                          The dimension settings for the segment that's associated with the activity.

                          • Attributes — (map<map>)

                            One or more custom attributes to use as criteria for the segment.

                            • AttributeType — (String)

                              The type of segment dimension to use. Valid values are:

                              • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                              • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                              • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                              • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                              • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                              • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                              • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                              • Possible values include:
                                • "INCLUSIVE"
                                • "EXCLUSIVE"
                                • "CONTAINS"
                                • "BEFORE"
                                • "AFTER"
                                • "ON"
                                • "BETWEEN"
                              • Valuesrequired — (Array<String>)

                                The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                            • Behavior — (map)

                              The behavior-based criteria, such as how recently users have used your app, for the segment.

                              • Recency — (map)

                                The dimension settings that are based on how recently an endpoint was active.

                                • Durationrequired — (String)

                                  The duration to use when determining whether an endpoint is active or inactive.

                                  Possible values include:
                                  • "HR_24"
                                  • "DAY_7"
                                  • "DAY_14"
                                  • "DAY_30"
                                • RecencyTyperequired — (String)

                                  The type of recency dimension to use for the segment. Valid values are: ACTIVE, endpoints that were active within the specified duration are included in the segment; and, INACTIVE, endpoints that weren't active within the specified duration are included in the segment.

                                  Possible values include:
                                  • "ACTIVE"
                                  • "INACTIVE"
                            • Demographic — (map)

                              The demographic-based criteria, such as device platform, for the segment.

                              • AppVersion — (map)

                                The app version criteria for the segment.

                                • DimensionType — (String)

                                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                  Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                              • Channel — (map)

                                The channel criteria for the segment.

                                • DimensionType — (String)

                                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                  Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                              • DeviceType — (map)

                                The device type criteria for the segment.

                                • DimensionType — (String)

                                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                  Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                              • Make — (map)

                                The device make criteria for the segment.

                                • DimensionType — (String)

                                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                  Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                              • Model — (map)

                                The device model criteria for the segment.

                                • DimensionType — (String)

                                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                  Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                              • Platform — (map)

                                The device platform criteria for the segment.

                                • DimensionType — (String)

                                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                  Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                            • Location — (map)

                              The location-based criteria, such as region or GPS coordinates, for the segment.

                              • Country — (map)

                                The country or region code, in ISO 3166-1 alpha-2 format, for the segment.

                                • DimensionType — (String)

                                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                  Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                              • GPSPoint — (map)

                                The GPS location and range for the segment.

                                • Coordinatesrequired — (map)

                                  The GPS coordinates to measure distance from.

                                  • Latituderequired — (Float)

                                    The latitude coordinate of the location.

                                  • Longituderequired — (Float)

                                    The longitude coordinate of the location.

                                • RangeInKilometers — (Float)

                                  The range, in kilometers, from the GPS coordinates.

                            • Metrics — (map<map>)

                              One or more custom metrics to use as criteria for the segment.

                              • ComparisonOperatorrequired — (String)

                                The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                              • Valuerequired — (Float)

                                The value to compare.

                            • UserAttributes — (map<map>)

                              One or more custom user attributes to use as criteria for the segment.

                              • AttributeType — (String)

                                The type of segment dimension to use. Valid values are:

                                • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                                • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                                • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                                • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                                • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                                • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                                • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                                • Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                  • "CONTAINS"
                                  • "BEFORE"
                                  • "AFTER"
                                  • "ON"
                                  • "BETWEEN"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                          • NextActivity — (String)

                            The unique identifier for the next activity to perform, after completing the activity for the path.

                        • DefaultActivity — (String)

                          The unique identifier for the activity to perform for participants who don't meet any of the conditions specified for other paths in the activity.

                        • EvaluationWaitTime — (map)

                          The amount of time to wait or the date and time when Amazon Pinpoint determines whether the conditions are met.

                          • WaitFor — (String)

                            The amount of time to wait, as a duration in ISO 8601 format, before determining whether the activity's conditions have been met or moving participants to the next activity in the journey.

                          • WaitUntil — (String)

                            The date and time, in ISO 8601 format, when Amazon Pinpoint determines whether the activity's conditions have been met or the activity moves participants to the next activity in the journey.

                      • PUSH — (map)

                        The settings for a push notification activity. This type of activity sends a push notification to participants.

                        • MessageConfig — (map)

                          Specifies the time to live (TTL) value for push notifications that are sent to participants in a journey.

                          • TimeToLive — (String)

                            The number of seconds that the push notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                            This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

                        • NextActivity — (String)

                          The unique identifier for the next activity to perform, after the message is sent.

                        • TemplateName — (String)

                          The name of the push notification template to use for the message. If specified, this value must match the name of an existing message template.

                        • TemplateVersion — (String)

                          The unique identifier for the version of the push notification template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                          If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

                      • RandomSplit — (map)

                        The settings for a random split activity. This type of activity randomly sends specified percentages of participants down one of as many as five paths in a journey, based on conditions that you specify.

                        • Branches — (Array<map>)

                          The paths for the activity, including the percentage of participants to enter each path and the activity to perform for each path.

                          • NextActivity — (String)

                            The unique identifier for the next activity to perform, after completing the activity for the path.

                          • Percentage — (Integer)

                            The percentage of participants to send down the activity path.

                            To determine which participants are sent down each path, Amazon Pinpoint applies a probability-based algorithm to the percentages that you specify for the paths. Therefore, the actual percentage of participants who are sent down a path may not be equal to the percentage that you specify.

                      • SMS — (map)

                        The settings for an SMS activity. This type of activity sends a text message to participants.

                        • MessageConfig — (map)

                          Specifies the sender ID and message type for an SMS message that's sent to participants in a journey.

                          • MessageType — (String)

                            The SMS message type. Valid values are TRANSACTIONAL (for messages that are critical or time-sensitive, such as a one-time passwords) and PROMOTIONAL (for messsages that aren't critical or time-sensitive, such as marketing messages).

                            Possible values include:
                            • "TRANSACTIONAL"
                            • "PROMOTIONAL"
                          • OriginationNumber — (String)

                            The long code to send the SMS message from. This value should be one of the dedicated long codes that's assigned to your AWS account. Although it isn't required, we recommend that you specify the long code using an E.164 format to ensure prompt and accurate delivery of the message. For example, +12065550100.

                          • SenderId — (String)

                            The sender ID to display as the sender of the message on a recipient's device. Support for sender IDs varies by country or region. For more information, see Supported Countries and Regions in the Amazon Pinpoint User Guide.

                          • EntityId — (String)

                            The entity ID or Principal Entity (PE) id received from the regulatory body for sending SMS in your country.

                          • TemplateId — (String)

                            The template ID received from the regulatory body for sending SMS in your country.

                        • NextActivity — (String)

                          The unique identifier for the next activity to perform, after the message is sent.

                        • TemplateName — (String)

                          The name of the SMS message template to use for the message. If specified, this value must match the name of an existing message template.

                        • TemplateVersion — (String)

                          The unique identifier for the version of the SMS template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                          If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

                      • Wait — (map)

                        The settings for a wait activity. This type of activity waits for a certain amount of time or until a specific date and time before moving participants to the next activity in a journey.

                        • NextActivity — (String)

                          The unique identifier for the next activity to perform, after performing the wait activity.

                        • WaitTime — (map)

                          The amount of time to wait or the date and time when the activity moves participants to the next activity in the journey.

                          • WaitFor — (String)

                            The amount of time to wait, as a duration in ISO 8601 format, before determining whether the activity's conditions have been met or moving participants to the next activity in the journey.

                          • WaitUntil — (String)

                            The date and time, in ISO 8601 format, when Amazon Pinpoint determines whether the activity's conditions have been met or the activity moves participants to the next activity in the journey.

                      • ContactCenter — (map)

                        The settings for a connect activity. This type of activity initiates a contact center call to participants.

                        • NextActivity — (String)

                          The unique identifier for the next activity to perform after the this activity.

                    • ApplicationIdrequired — (String)

                      The unique identifier for the application that the journey applies to.

                    • CreationDate — (String)

                      The date, in ISO 8601 format, when the journey was created.

                    • Idrequired — (String)

                      The unique identifier for the journey.

                    • LastModifiedDate — (String)

                      The date, in ISO 8601 format, when the journey was last modified.

                    • Limits — (map)

                      The messaging and entry limits for the journey.

                      • DailyCap — (Integer)

                        The maximum number of messages that the journey can send to a single participant during a 24-hour period. The maximum value is 100.

                      • EndpointReentryCap — (Integer)

                        The maximum number of times that a participant can enter the journey. The maximum value is 100. To allow participants to enter the journey an unlimited number of times, set this value to 0.

                      • MessagesPerSecond — (Integer)

                        The maximum number of messages that the journey can send each second.

                      • EndpointReentryInterval — (String)

                        Minimum time that must pass before an endpoint can re-enter a given journey. The duration should use an ISO 8601 format, such as PT1H.

                      • TimeframeCap — (map)

                        The number of messages that an endpoint can receive during the specified timeframe.

                        • Cap — (Integer)

                          The maximum number of messages that all journeys can send to an endpoint during the specified timeframe. The maximum value is 100. If set to 0, this limit will not apply.

                        • Days — (Integer)

                          The length of the timeframe in days. The maximum value is 30. If set to 0, this limit will not apply.

                      • TotalCap — (Integer)

                        The maximum number of messages a journey can sent to a single endpoint. The maximum value is 100. If set to 0, this limit will not apply.

                    • LocalTime — (Boolean)

                      Specifies whether the journey's scheduled start and end times use each participant's local time. If this value is true, the schedule uses each participant's local time.

                    • Namerequired — (String)

                      The name of the journey.

                    • QuietTime — (map)

                      The quiet time settings for the journey. Quiet time is a specific time range when a journey doesn't send messages to participants, if all the following conditions are met:

                      • The EndpointDemographic.Timezone property of the endpoint for the participant is set to a valid value.

                      • The current time in the participant's time zone is later than or equal to the time specified by the QuietTime.Start property for the journey.

                      • The current time in the participant's time zone is earlier than or equal to the time specified by the QuietTime.End property for the journey.

                      If any of the preceding conditions isn't met, the participant will receive messages from the journey, even if quiet time is enabled.

                      • End — (String)

                        The specific time when quiet time ends. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

                      • Start — (String)

                        The specific time when quiet time begins. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

                    • RefreshFrequency — (String)

                      The frequency with which Amazon Pinpoint evaluates segment and event data for the journey, as a duration in ISO 8601 format.

                    • Schedule — (map)

                      The schedule settings for the journey.

                      • EndTime — (Date)

                        The scheduled time, in ISO 8601 format, when the journey ended or will end.

                      • StartTime — (Date)

                        The scheduled time, in ISO 8601 format, when the journey began or will begin.

                      • Timezone — (String)

                        The starting UTC offset for the journey schedule, if the value of the journey's LocalTime property is true. Valid values are: UTC, UTC+01, UTC+02, UTC+03, UTC+03:30, UTC+04, UTC+04:30, UTC+05, UTC+05:30, UTC+05:45, UTC+06, UTC+06:30, UTC+07, UTC+08, UTC+08:45, UTC+09, UTC+09:30, UTC+10, UTC+10:30, UTC+11, UTC+12, UTC+12:45, UTC+13, UTC+13:45, UTC-02, UTC-02:30, UTC-03, UTC-03:30, UTC-04, UTC-05, UTC-06, UTC-07, UTC-08, UTC-09, UTC-09:30, UTC-10, and UTC-11.

                    • StartActivity — (String)

                      The unique identifier for the first activity in the journey.

                    • StartCondition — (map)

                      The segment that defines which users are participants in the journey.

                      • Description — (String)

                        The custom description of the condition.

                      • EventStartCondition — (map)

                        Specifies the settings for an event that causes a journey activity to start.

                        • EventFilter — (map)

                          Specifies the settings for an event that causes a campaign to be sent or a journey activity to be performed.

                          • Dimensionsrequired — (map)

                            The dimensions for the event filter to use for the campaign or the journey activity.

                            • Attributes — (map<map>)

                              One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                              • AttributeType — (String)

                                The type of segment dimension to use. Valid values are:

                                • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                                • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                                • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                                • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                                • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                                • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                                • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                                • Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                  • "CONTAINS"
                                  • "BEFORE"
                                  • "AFTER"
                                  • "ON"
                                  • "BETWEEN"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                              • EventType — (map)

                                The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                                • DimensionType — (String)

                                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                  Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                              • Metrics — (map<map>)

                                One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                                • ComparisonOperatorrequired — (String)

                                  The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                                • Valuerequired — (Float)

                                  The value to compare.

                            • FilterTyperequired — (String)

                              The type of event that causes the campaign to be sent or the journey activity to be performed. Valid values are: SYSTEM, sends the campaign or performs the activity when a system event occurs; and, ENDPOINT, sends the campaign or performs the activity when an endpoint event (Events resource) occurs.

                              Possible values include:
                              • "SYSTEM"
                              • "ENDPOINT"
                          • SegmentId — (String)
                        • SegmentStartCondition — (map)

                          The segment that's associated with the first activity in the journey. This segment determines which users are participants in the journey.

                          • SegmentIdrequired — (String)

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

                      • State — (String)

                        The current status of the journey. Possible values are:

                        • DRAFT - The journey is being developed and hasn't been published yet.

                        • ACTIVE - The journey has been developed and published. Depending on the journey's schedule, the journey may currently be running or scheduled to start running at a later time. If a journey's status is ACTIVE, you can't add, change, or remove activities from it.

                        • COMPLETED - The journey has been published and has finished running. All participants have entered the journey and no participants are waiting to complete the journey or any activities in the journey.

                        • CANCELLED - The journey has been stopped. If a journey's status is CANCELLED, you can't add, change, or remove activities or segment settings from the journey.

                        • CLOSED - The journey has been published and has started running. It may have also passed its scheduled end time, or passed its scheduled start time and a refresh frequency hasn't been specified for it. If a journey's status is CLOSED, you can't add participants to it, and no existing participants can enter the journey for the first time. However, any existing participants who are currently waiting to start an activity may continue the journey.

                        Possible values include:
                        • "DRAFT"
                        • "ACTIVE"
                        • "COMPLETED"
                        • "CANCELLED"
                        • "CLOSED"
                        • "PAUSED"
                      • tags — (map<String>)

                        This object is not used or supported.

                      • WaitForQuietTime — (Boolean)

                        Indicates whether endpoints in quiet hours should enter a wait activity until quiet hours have elapsed.

                      • RefreshOnSegmentUpdate — (Boolean)

                        Indicates whether the journey participants should be refreshed when a segment is updated.

                      • JourneyChannelSettings — (map)

                        The channel-specific configurations for the journey.

                        • ConnectCampaignArn — (String)

                          Amazon Resource Name (ARN) of the Connect Campaign.

                        • ConnectCampaignExecutionRoleArn — (String)

                          IAM role ARN to be assumed when invoking Connect campaign execution APIs for dialing.

                      • SendingSchedule — (Boolean)

                        Indicates if journey has Advance Quiet Time enabled. This flag should be set to true in order to allow using OpenHours and ClosedDays.

                      • OpenHours — (map)

                        The time when a journey can send messages. QuietTime should be configured first and SendingSchedule should be set to true.

                        • EMAIL — (map<Array<map>>)

                          Specifies the schedule settings for the email channel.

                          • StartTime — (String)

                            The start of the scheduled time, in ISO 8601 format, when the channel can send messages.

                          • EndTime — (String)

                            The end of the scheduled time, in ISO 8601 format, when the channel can't send messages.

                        • SMS — (map<Array<map>>)

                          Specifies the schedule settings for the SMS channel.

                          • StartTime — (String)

                            The start of the scheduled time, in ISO 8601 format, when the channel can send messages.

                          • EndTime — (String)

                            The end of the scheduled time, in ISO 8601 format, when the channel can't send messages.

                        • PUSH — (map<Array<map>>)

                          Specifies the schedule settings for the push channel.

                          • StartTime — (String)

                            The start of the scheduled time, in ISO 8601 format, when the channel can send messages.

                          • EndTime — (String)

                            The end of the scheduled time, in ISO 8601 format, when the channel can't send messages.

                        • VOICE — (map<Array<map>>)

                          Specifies the schedule settings for the voice channel.

                          • StartTime — (String)

                            The start of the scheduled time, in ISO 8601 format, when the channel can send messages.

                          • EndTime — (String)

                            The end of the scheduled time, in ISO 8601 format, when the channel can't send messages.

                        • CUSTOM — (map<Array<map>>)

                          Specifies the schedule settings for the custom channel.

                          • StartTime — (String)

                            The start of the scheduled time, in ISO 8601 format, when the channel can send messages.

                          • EndTime — (String)

                            The end of the scheduled time, in ISO 8601 format, when the channel can't send messages.

                      • ClosedDays — (map)

                        The time when a journey will not send messages. QuietTime should be configured first and SendingSchedule should be set to true.

                        • EMAIL — (Array<map>)

                          Rules for the Email channel.

                          • Name — (String)

                            The name of the closed day rule.

                          • StartDateTime — (String)

                            Start DateTime ISO 8601 format

                          • EndDateTime — (String)

                            End DateTime ISO 8601 format

                        • SMS — (Array<map>)

                          Rules for the SMS channel.

                          • Name — (String)

                            The name of the closed day rule.

                          • StartDateTime — (String)

                            Start DateTime ISO 8601 format

                          • EndDateTime — (String)

                            End DateTime ISO 8601 format

                        • PUSH — (Array<map>)

                          Rules for the Push channel.

                          • Name — (String)

                            The name of the closed day rule.

                          • StartDateTime — (String)

                            Start DateTime ISO 8601 format

                          • EndDateTime — (String)

                            End DateTime ISO 8601 format

                        • VOICE — (Array<map>)

                          Rules for the Voice channel.

                          • Name — (String)

                            The name of the closed day rule.

                          • StartDateTime — (String)

                            Start DateTime ISO 8601 format

                          • EndDateTime — (String)

                            End DateTime ISO 8601 format

                        • CUSTOM — (Array<map>)

                          Rules for the Custom channel.

                          • Name — (String)

                            The name of the closed day rule.

                          • StartDateTime — (String)

                            Start DateTime ISO 8601 format

                          • EndDateTime — (String)

                            End DateTime ISO 8601 format

                      • TimezoneEstimationMethods — (Array<String>)

                        An array of time zone estimation methods, if any, to use for determining an Endpoints time zone if the Endpoint does not have a value for the Demographic.Timezone attribute.

                        • PHONE_NUMBER - A time zone is determined based on the Endpoint.Address and Endpoint.Location.Country.

                        • POSTAL_CODE - A time zone is determined based on the Endpoint.Location.PostalCode and Endpoint.Location.Country.

                          Note: POSTAL_CODE detection is only supported in the United States, United Kingdom, Australia, New Zealand, Canada, France, Italy, Spain, Germany and in regions where Amazon Pinpoint is available.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

createPushTemplate(params = {}, callback) ⇒ AWS.Request

Creates a message template for messages that are sent through a push notification channel.

Service Reference:

Examples:

Calling the createPushTemplate operation

var params = {
  PushNotificationTemplateRequest: { /* required */
    ADM: {
      Action: OPEN_APP | DEEP_LINK | URL,
      Body: 'STRING_VALUE',
      ImageIconUrl: 'STRING_VALUE',
      ImageUrl: 'STRING_VALUE',
      RawContent: 'STRING_VALUE',
      SmallImageIconUrl: 'STRING_VALUE',
      Sound: 'STRING_VALUE',
      Title: 'STRING_VALUE',
      Url: 'STRING_VALUE'
    },
    APNS: {
      Action: OPEN_APP | DEEP_LINK | URL,
      Body: 'STRING_VALUE',
      MediaUrl: 'STRING_VALUE',
      RawContent: 'STRING_VALUE',
      Sound: 'STRING_VALUE',
      Title: 'STRING_VALUE',
      Url: 'STRING_VALUE'
    },
    Baidu: {
      Action: OPEN_APP | DEEP_LINK | URL,
      Body: 'STRING_VALUE',
      ImageIconUrl: 'STRING_VALUE',
      ImageUrl: 'STRING_VALUE',
      RawContent: 'STRING_VALUE',
      SmallImageIconUrl: 'STRING_VALUE',
      Sound: 'STRING_VALUE',
      Title: 'STRING_VALUE',
      Url: 'STRING_VALUE'
    },
    Default: {
      Action: OPEN_APP | DEEP_LINK | URL,
      Body: 'STRING_VALUE',
      Sound: 'STRING_VALUE',
      Title: 'STRING_VALUE',
      Url: 'STRING_VALUE'
    },
    DefaultSubstitutions: 'STRING_VALUE',
    GCM: {
      Action: OPEN_APP | DEEP_LINK | URL,
      Body: 'STRING_VALUE',
      ImageIconUrl: 'STRING_VALUE',
      ImageUrl: 'STRING_VALUE',
      RawContent: 'STRING_VALUE',
      SmallImageIconUrl: 'STRING_VALUE',
      Sound: 'STRING_VALUE',
      Title: 'STRING_VALUE',
      Url: 'STRING_VALUE'
    },
    RecommenderId: 'STRING_VALUE',
    TemplateDescription: 'STRING_VALUE',
    tags: {
      '<__string>': 'STRING_VALUE',
      /* '<__string>': ... */
    }
  },
  TemplateName: 'STRING_VALUE' /* required */
};
pinpoint.createPushTemplate(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • PushNotificationTemplateRequest — (map)

      Specifies the content and settings for a message template that can be used in messages that are sent through a push notification channel.

      • ADM — (map)

        The message template to use for the ADM (Amazon Device Messaging) channel. This message template overrides the default template for push notification channels (DefaultPushNotificationTemplate).

        • Action — (String)

          The action to occur if a recipient taps a push notification that's based on the message template. Valid values are:

          • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

          • DEEP_LINK - Your app opens and displays a designated user interface in the app. This action uses the deep-linking features of the Android platform.

          • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

          Possible values include:
          • "OPEN_APP"
          • "DEEP_LINK"
          • "URL"
        • Body — (String)

          The message body to use in a push notification that's based on the message template.

        • ImageIconUrl — (String)

          The URL of the large icon image to display in the content view of a push notification that's based on the message template.

        • ImageUrl — (String)

          The URL of an image to display in a push notification that's based on the message template.

        • RawContent — (String)

          The raw, JSON-formatted string to use as the payload for a push notification that's based on the message template. If specified, this value overrides all other content for the message template.

        • SmallImageIconUrl — (String)

          The URL of the small icon image to display in the status bar and the content view of a push notification that's based on the message template.

        • Sound — (String)

          The sound to play when a recipient receives a push notification that's based on the message template. You can use the default stream or specify the file name of a sound resource that's bundled in your app. On an Android platform, the sound file must reside in /res/raw/.

        • Title — (String)

          The title to use in a push notification that's based on the message template. This title appears above the notification message on a recipient's device.

        • Url — (String)

          The URL to open in a recipient's default mobile browser, if a recipient taps a push notification that's based on the message template and the value of the Action property is URL.

      • APNS — (map)

        The message template to use for the APNs (Apple Push Notification service) channel. This message template overrides the default template for push notification channels (DefaultPushNotificationTemplate).

        • Action — (String)

          The action to occur if a recipient taps a push notification that's based on the message template. Valid values are:

          • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

          • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of the iOS platform.

          • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

          Possible values include:
          • "OPEN_APP"
          • "DEEP_LINK"
          • "URL"
        • Body — (String)

          The message body to use in push notifications that are based on the message template.

        • MediaUrl — (String)

          The URL of an image or video to display in push notifications that are based on the message template.

        • RawContent — (String)

          The raw, JSON-formatted string to use as the payload for push notifications that are based on the message template. If specified, this value overrides all other content for the message template.

        • Sound — (String)

          The key for the sound to play when the recipient receives a push notification that's based on the message template. The value for this key is the name of a sound file in your app's main bundle or the Library/Sounds folder in your app's data container. If the sound file can't be found or you specify default for the value, the system plays the default alert sound.

        • Title — (String)

          The title to use in push notifications that are based on the message template. This title appears above the notification message on a recipient's device.

        • Url — (String)

          The URL to open in the recipient's default mobile browser, if a recipient taps a push notification that's based on the message template and the value of the Action property is URL.

      • Baidu — (map)

        The message template to use for the Baidu (Baidu Cloud Push) channel. This message template overrides the default template for push notification channels (DefaultPushNotificationTemplate).

        • Action — (String)

          The action to occur if a recipient taps a push notification that's based on the message template. Valid values are:

          • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

          • DEEP_LINK - Your app opens and displays a designated user interface in the app. This action uses the deep-linking features of the Android platform.

          • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

          Possible values include:
          • "OPEN_APP"
          • "DEEP_LINK"
          • "URL"
        • Body — (String)

          The message body to use in a push notification that's based on the message template.

        • ImageIconUrl — (String)

          The URL of the large icon image to display in the content view of a push notification that's based on the message template.

        • ImageUrl — (String)

          The URL of an image to display in a push notification that's based on the message template.

        • RawContent — (String)

          The raw, JSON-formatted string to use as the payload for a push notification that's based on the message template. If specified, this value overrides all other content for the message template.

        • SmallImageIconUrl — (String)

          The URL of the small icon image to display in the status bar and the content view of a push notification that's based on the message template.

        • Sound — (String)

          The sound to play when a recipient receives a push notification that's based on the message template. You can use the default stream or specify the file name of a sound resource that's bundled in your app. On an Android platform, the sound file must reside in /res/raw/.

        • Title — (String)

          The title to use in a push notification that's based on the message template. This title appears above the notification message on a recipient's device.

        • Url — (String)

          The URL to open in a recipient's default mobile browser, if a recipient taps a push notification that's based on the message template and the value of the Action property is URL.

      • Default — (map)

        The default message template to use for push notification channels.

        • Action — (String)

          The action to occur if a recipient taps a push notification that's based on the message template. Valid values are:

          • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

          • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of the iOS and Android platforms.

          • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

          Possible values include:
          • "OPEN_APP"
          • "DEEP_LINK"
          • "URL"
        • Body — (String)

          The message body to use in push notifications that are based on the message template.

        • Sound — (String)

          The sound to play when a recipient receives a push notification that's based on the message template. You can use the default stream or specify the file name of a sound resource that's bundled in your app. On an Android platform, the sound file must reside in /res/raw/.

          For an iOS platform, this value is the key for the name of a sound file in your app's main bundle or the Library/Sounds folder in your app's data container. If the sound file can't be found or you specify default for the value, the system plays the default alert sound.

        • Title — (String)

          The title to use in push notifications that are based on the message template. This title appears above the notification message on a recipient's device.

        • Url — (String)

          The URL to open in a recipient's default mobile browser, if a recipient taps a push notification that's based on the message template and the value of the Action property is URL.

      • DefaultSubstitutions — (String)

        A JSON object that specifies the default values to use for message variables in the message template. This object is a set of key-value pairs. Each key defines a message variable in the template. The corresponding value defines the default value for that variable. When you create a message that's based on the template, you can override these defaults with message-specific and address-specific variables and values.

      • GCM — (map)

        The message template to use for the GCM channel, which is used to send notifications through the Firebase Cloud Messaging (FCM), formerly Google Cloud Messaging (GCM), service. This message template overrides the default template for push notification channels (DefaultPushNotificationTemplate).

        • Action — (String)

          The action to occur if a recipient taps a push notification that's based on the message template. Valid values are:

          • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

          • DEEP_LINK - Your app opens and displays a designated user interface in the app. This action uses the deep-linking features of the Android platform.

          • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

          Possible values include:
          • "OPEN_APP"
          • "DEEP_LINK"
          • "URL"
        • Body — (String)

          The message body to use in a push notification that's based on the message template.

        • ImageIconUrl — (String)

          The URL of the large icon image to display in the content view of a push notification that's based on the message template.

        • ImageUrl — (String)

          The URL of an image to display in a push notification that's based on the message template.

        • RawContent — (String)

          The raw, JSON-formatted string to use as the payload for a push notification that's based on the message template. If specified, this value overrides all other content for the message template.

        • SmallImageIconUrl — (String)

          The URL of the small icon image to display in the status bar and the content view of a push notification that's based on the message template.

        • Sound — (String)

          The sound to play when a recipient receives a push notification that's based on the message template. You can use the default stream or specify the file name of a sound resource that's bundled in your app. On an Android platform, the sound file must reside in /res/raw/.

        • Title — (String)

          The title to use in a push notification that's based on the message template. This title appears above the notification message on a recipient's device.

        • Url — (String)

          The URL to open in a recipient's default mobile browser, if a recipient taps a push notification that's based on the message template and the value of the Action property is URL.

      • RecommenderId — (String)

        The unique identifier for the recommender model to use for the message template. Amazon Pinpoint uses this value to determine how to retrieve and process data from a recommender model when it sends messages that use the template, if the template contains message variables for recommendation data.

      • tags — (map<String>)
        Note: As of 22-05-2023 tags has been deprecated for update operations. After this date any value in tags is not processed and an error code is not returned. To manage tags we recommend using either Tags in the API Reference for Amazon Pinpoint, resourcegroupstaggingapi commands in the AWS Command Line Interface Documentation or resourcegroupstaggingapi in the AWS SDK.

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

      • TemplateDescription — (String)

        A custom description of the message template.

    • TemplateName — (String)

      The name of the message template. A template name must start with an alphanumeric character and can contain a maximum of 128 characters. The characters can be alphanumeric characters, underscores (_), or hyphens (-). Template names are case sensitive.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • CreateTemplateMessageBody — (map)

        Provides information about a request to create a message template.

        • Arn — (String)

          The Amazon Resource Name (ARN) of the message template that was created.

        • Message — (String)

          The message that's returned from the API for the request to create the message template.

        • RequestID — (String)

          The unique identifier for the request to create the message template.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

createRecommenderConfiguration(params = {}, callback) ⇒ AWS.Request

Creates an Amazon Pinpoint configuration for a recommender model.

Service Reference:

Examples:

Calling the createRecommenderConfiguration operation

var params = {
  CreateRecommenderConfiguration: { /* required */
    RecommendationProviderRoleArn: 'STRING_VALUE', /* required */
    RecommendationProviderUri: 'STRING_VALUE', /* required */
    Attributes: {
      '<__string>': 'STRING_VALUE',
      /* '<__string>': ... */
    },
    Description: 'STRING_VALUE',
    Name: 'STRING_VALUE',
    RecommendationProviderIdType: 'STRING_VALUE',
    RecommendationTransformerUri: 'STRING_VALUE',
    RecommendationsDisplayName: 'STRING_VALUE',
    RecommendationsPerMessage: 'NUMBER_VALUE'
  }
};
pinpoint.createRecommenderConfiguration(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • CreateRecommenderConfiguration — (map)

      Specifies Amazon Pinpoint configuration settings for retrieving and processing recommendation data from a recommender model.

      • Attributes — (map<String>)

        A map of key-value pairs that defines 1-10 custom endpoint or user attributes, depending on the value for the RecommendationProviderIdType property. Each of these attributes temporarily stores a recommended item that's retrieved from the recommender model and sent to an AWS Lambda function for additional processing. Each attribute can be used as a message variable in a message template.

        In the map, the key is the name of a custom attribute and the value is a custom display name for that attribute. The display name appears in the Attribute finder of the template editor on the Amazon Pinpoint console. The following restrictions apply to these names:

        • An attribute name must start with a letter or number and it can contain up to 50 characters. The characters can be letters, numbers, underscores (), or hyphens (-). Attribute names are case sensitive and must be unique.

        • An attribute display name must start with a letter or number and it can contain up to 25 characters. The characters can be letters, numbers, spaces, underscores (), or hyphens (-).

        This object is required if the configuration invokes an AWS Lambda function (RecommendationTransformerUri) to process recommendation data. Otherwise, don't include this object in your request.

      • Description — (String)

        A custom description of the configuration for the recommender model. The description can contain up to 128 characters. The characters can be letters, numbers, spaces, or the following symbols: _ ; () , ‐.

      • Name — (String)

        A custom name of the configuration for the recommender model. The name must start with a letter or number and it can contain up to 128 characters. The characters can be letters, numbers, spaces, underscores (_), or hyphens (-).

      • RecommendationProviderIdType — (String)

        The type of Amazon Pinpoint ID to associate with unique user IDs in the recommender model. This value enables the model to use attribute and event data that’s specific to a particular endpoint or user in an Amazon Pinpoint application. Valid values are:

        • PINPOINT_ENDPOINT_ID - Associate each user in the model with a particular endpoint in Amazon Pinpoint. The data is correlated based on endpoint IDs in Amazon Pinpoint. This is the default value.

        • PINPOINT_USER_ID - Associate each user in the model with a particular user and endpoint in Amazon Pinpoint. The data is correlated based on user IDs in Amazon Pinpoint. If you specify this value, an endpoint definition in Amazon Pinpoint has to specify both a user ID (UserId) and an endpoint ID. Otherwise, messages won’t be sent to the user's endpoint.

      • RecommendationProviderRoleArnrequired — (String)

        The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that authorizes Amazon Pinpoint to retrieve recommendation data from the recommender model.

      • RecommendationProviderUrirequired — (String)

        The Amazon Resource Name (ARN) of the recommender model to retrieve recommendation data from. This value must match the ARN of an Amazon Personalize campaign.

      • RecommendationTransformerUri — (String)

        The name or Amazon Resource Name (ARN) of the AWS Lambda function to invoke for additional processing of recommendation data that's retrieved from the recommender model.

      • RecommendationsDisplayName — (String)

        A custom display name for the standard endpoint or user attribute (RecommendationItems) that temporarily stores recommended items for each endpoint or user, depending on the value for the RecommendationProviderIdType property. This value is required if the configuration doesn't invoke an AWS Lambda function (RecommendationTransformerUri) to perform additional processing of recommendation data.

        This name appears in the Attribute finder of the template editor on the Amazon Pinpoint console. The name can contain up to 25 characters. The characters can be letters, numbers, spaces, underscores (_), or hyphens (-). These restrictions don't apply to attribute values.

      • RecommendationsPerMessage — (Integer)

        The number of recommended items to retrieve from the model for each endpoint or user, depending on the value for the RecommendationProviderIdType property. This number determines how many recommended items are available for use in message variables. The minimum value is 1. The maximum value is 5. The default value is 5.

        To use multiple recommended items and custom attributes with message variables, you have to use an AWS Lambda function (RecommendationTransformerUri) to perform additional processing of recommendation data.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • RecommenderConfigurationResponse — (map)

        Provides information about Amazon Pinpoint configuration settings for retrieving and processing data from a recommender model.

        • Attributes — (map<String>)

          A map that defines 1-10 custom endpoint or user attributes, depending on the value for the RecommendationProviderIdType property. Each of these attributes temporarily stores a recommended item that's retrieved from the recommender model and sent to an AWS Lambda function for additional processing. Each attribute can be used as a message variable in a message template.

          This value is null if the configuration doesn't invoke an AWS Lambda function (RecommendationTransformerUri) to perform additional processing of recommendation data.

        • CreationDaterequired — (String)

          The date, in extended ISO 8601 format, when the configuration was created for the recommender model.

        • Description — (String)

          The custom description of the configuration for the recommender model.

        • Idrequired — (String)

          The unique identifier for the recommender model configuration.

        • LastModifiedDaterequired — (String)

          The date, in extended ISO 8601 format, when the configuration for the recommender model was last modified.

        • Name — (String)

          The custom name of the configuration for the recommender model.

        • RecommendationProviderIdType — (String)

          The type of Amazon Pinpoint ID that's associated with unique user IDs in the recommender model. This value enables the model to use attribute and event data that’s specific to a particular endpoint or user in an Amazon Pinpoint application. Possible values are:

          • PINPOINT_ENDPOINT_ID - Each user in the model is associated with a particular endpoint in Amazon Pinpoint. The data is correlated based on endpoint IDs in Amazon Pinpoint. This is the default value.

          • PINPOINT_USER_ID - Each user in the model is associated with a particular user and endpoint in Amazon Pinpoint. The data is correlated based on user IDs in Amazon Pinpoint. If this value is specified, an endpoint definition in Amazon Pinpoint has to specify both a user ID (UserId) and an endpoint ID. Otherwise, messages won’t be sent to the user's endpoint.

        • RecommendationProviderRoleArnrequired — (String)

          The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that authorizes Amazon Pinpoint to retrieve recommendation data from the recommender model.

        • RecommendationProviderUrirequired — (String)

          The Amazon Resource Name (ARN) of the recommender model that Amazon Pinpoint retrieves the recommendation data from. This value is the ARN of an Amazon Personalize campaign.

        • RecommendationTransformerUri — (String)

          The name or Amazon Resource Name (ARN) of the AWS Lambda function that Amazon Pinpoint invokes to perform additional processing of recommendation data that it retrieves from the recommender model.

        • RecommendationsDisplayName — (String)

          The custom display name for the standard endpoint or user attribute (RecommendationItems) that temporarily stores recommended items for each endpoint or user, depending on the value for the RecommendationProviderIdType property. This name appears in the Attribute finder of the template editor on the Amazon Pinpoint console.

          This value is null if the configuration doesn't invoke an AWS Lambda function (RecommendationTransformerUri) to perform additional processing of recommendation data.

        • RecommendationsPerMessage — (Integer)

          The number of recommended items that are retrieved from the model for each endpoint or user, depending on the value for the RecommendationProviderIdType property. This number determines how many recommended items are available for use in message variables.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

createSegment(params = {}, callback) ⇒ AWS.Request

Creates a new segment for an application or updates the configuration, dimension, and other settings for an existing segment that's associated with an application.

Service Reference:

Examples:

Calling the createSegment operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  WriteSegmentRequest: { /* required */
    Dimensions: {
      Attributes: {
        '<__string>': {
          Values: [ /* required */
            'STRING_VALUE',
            /* more items */
          ],
          AttributeType: INCLUSIVE | EXCLUSIVE | CONTAINS | BEFORE | AFTER | ON | BETWEEN
        },
        /* '<__string>': ... */
      },
      Behavior: {
        Recency: {
          Duration: HR_24 | DAY_7 | DAY_14 | DAY_30, /* required */
          RecencyType: ACTIVE | INACTIVE /* required */
        }
      },
      Demographic: {
        AppVersion: {
          Values: [ /* required */
            'STRING_VALUE',
            /* more items */
          ],
          DimensionType: INCLUSIVE | EXCLUSIVE
        },
        Channel: {
          Values: [ /* required */
            'STRING_VALUE',
            /* more items */
          ],
          DimensionType: INCLUSIVE | EXCLUSIVE
        },
        DeviceType: {
          Values: [ /* required */
            'STRING_VALUE',
            /* more items */
          ],
          DimensionType: INCLUSIVE | EXCLUSIVE
        },
        Make: {
          Values: [ /* required */
            'STRING_VALUE',
            /* more items */
          ],
          DimensionType: INCLUSIVE | EXCLUSIVE
        },
        Model: {
          Values: [ /* required */
            'STRING_VALUE',
            /* more items */
          ],
          DimensionType: INCLUSIVE | EXCLUSIVE
        },
        Platform: {
          Values: [ /* required */
            'STRING_VALUE',
            /* more items */
          ],
          DimensionType: INCLUSIVE | EXCLUSIVE
        }
      },
      Location: {
        Country: {
          Values: [ /* required */
            'STRING_VALUE',
            /* more items */
          ],
          DimensionType: INCLUSIVE | EXCLUSIVE
        },
        GPSPoint: {
          Coordinates: { /* required */
            Latitude: 'NUMBER_VALUE', /* required */
            Longitude: 'NUMBER_VALUE' /* required */
          },
          RangeInKilometers: 'NUMBER_VALUE'
        }
      },
      Metrics: {
        '<__string>': {
          ComparisonOperator: 'STRING_VALUE', /* required */
          Value: 'NUMBER_VALUE' /* required */
        },
        /* '<__string>': ... */
      },
      UserAttributes: {
        '<__string>': {
          Values: [ /* required */
            'STRING_VALUE',
            /* more items */
          ],
          AttributeType: INCLUSIVE | EXCLUSIVE | CONTAINS | BEFORE | AFTER | ON | BETWEEN
        },
        /* '<__string>': ... */
      }
    },
    Name: 'STRING_VALUE',
    SegmentGroups: {
      Groups: [
        {
          Dimensions: [
            {
              Attributes: {
                '<__string>': {
                  Values: [ /* required */
                    'STRING_VALUE',
                    /* more items */
                  ],
                  AttributeType: INCLUSIVE | EXCLUSIVE | CONTAINS | BEFORE | AFTER | ON | BETWEEN
                },
                /* '<__string>': ... */
              },
              Behavior: {
                Recency: {
                  Duration: HR_24 | DAY_7 | DAY_14 | DAY_30, /* required */
                  RecencyType: ACTIVE | INACTIVE /* required */
                }
              },
              Demographic: {
                AppVersion: {
                  Values: [ /* required */
                    'STRING_VALUE',
                    /* more items */
                  ],
                  DimensionType: INCLUSIVE | EXCLUSIVE
                },
                Channel: {
                  Values: [ /* required */
                    'STRING_VALUE',
                    /* more items */
                  ],
                  DimensionType: INCLUSIVE | EXCLUSIVE
                },
                DeviceType: {
                  Values: [ /* required */
                    'STRING_VALUE',
                    /* more items */
                  ],
                  DimensionType: INCLUSIVE | EXCLUSIVE
                },
                Make: {
                  Values: [ /* required */
                    'STRING_VALUE',
                    /* more items */
                  ],
                  DimensionType: INCLUSIVE | EXCLUSIVE
                },
                Model: {
                  Values: [ /* required */
                    'STRING_VALUE',
                    /* more items */
                  ],
                  DimensionType: INCLUSIVE | EXCLUSIVE
                },
                Platform: {
                  Values: [ /* required */
                    'STRING_VALUE',
                    /* more items */
                  ],
                  DimensionType: INCLUSIVE | EXCLUSIVE
                }
              },
              Location: {
                Country: {
                  Values: [ /* required */
                    'STRING_VALUE',
                    /* more items */
                  ],
                  DimensionType: INCLUSIVE | EXCLUSIVE
                },
                GPSPoint: {
                  Coordinates: { /* required */
                    Latitude: 'NUMBER_VALUE', /* required */
                    Longitude: 'NUMBER_VALUE' /* required */
                  },
                  RangeInKilometers: 'NUMBER_VALUE'
                }
              },
              Metrics: {
                '<__string>': {
                  ComparisonOperator: 'STRING_VALUE', /* required */
                  Value: 'NUMBER_VALUE' /* required */
                },
                /* '<__string>': ... */
              },
              UserAttributes: {
                '<__string>': {
                  Values: [ /* required */
                    'STRING_VALUE',
                    /* more items */
                  ],
                  AttributeType: INCLUSIVE | EXCLUSIVE | CONTAINS | BEFORE | AFTER | ON | BETWEEN
                },
                /* '<__string>': ... */
              }
            },
            /* more items */
          ],
          SourceSegments: [
            {
              Id: 'STRING_VALUE', /* required */
              Version: 'NUMBER_VALUE'
            },
            /* more items */
          ],
          SourceType: ALL | ANY | NONE,
          Type: ALL | ANY | NONE
        },
        /* more items */
      ],
      Include: ALL | ANY | NONE
    },
    tags: {
      '<__string>': 'STRING_VALUE',
      /* '<__string>': ... */
    }
  }
};
pinpoint.createSegment(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • WriteSegmentRequest — (map)

      Specifies the configuration, dimension, and other settings for a segment. A WriteSegmentRequest object can include a Dimensions object or a SegmentGroups object, but not both.

      • Dimensions — (map)

        The criteria that define the dimensions for the segment.

        • Attributes — (map<map>)

          One or more custom attributes to use as criteria for the segment.

          • AttributeType — (String)

            The type of segment dimension to use. Valid values are:

            • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
            • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
            • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
            • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
            • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
            • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
            • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
            • Possible values include:
              • "INCLUSIVE"
              • "EXCLUSIVE"
              • "CONTAINS"
              • "BEFORE"
              • "AFTER"
              • "ON"
              • "BETWEEN"
            • Valuesrequired — (Array<String>)

              The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

          • Behavior — (map)

            The behavior-based criteria, such as how recently users have used your app, for the segment.

            • Recency — (map)

              The dimension settings that are based on how recently an endpoint was active.

              • Durationrequired — (String)

                The duration to use when determining whether an endpoint is active or inactive.

                Possible values include:
                • "HR_24"
                • "DAY_7"
                • "DAY_14"
                • "DAY_30"
              • RecencyTyperequired — (String)

                The type of recency dimension to use for the segment. Valid values are: ACTIVE, endpoints that were active within the specified duration are included in the segment; and, INACTIVE, endpoints that weren't active within the specified duration are included in the segment.

                Possible values include:
                • "ACTIVE"
                • "INACTIVE"
          • Demographic — (map)

            The demographic-based criteria, such as device platform, for the segment.

            • AppVersion — (map)

              The app version criteria for the segment.

              • DimensionType — (String)

                The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                Possible values include:
                • "INCLUSIVE"
                • "EXCLUSIVE"
              • Valuesrequired — (Array<String>)

                The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

            • Channel — (map)

              The channel criteria for the segment.

              • DimensionType — (String)

                The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                Possible values include:
                • "INCLUSIVE"
                • "EXCLUSIVE"
              • Valuesrequired — (Array<String>)

                The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

            • DeviceType — (map)

              The device type criteria for the segment.

              • DimensionType — (String)

                The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                Possible values include:
                • "INCLUSIVE"
                • "EXCLUSIVE"
              • Valuesrequired — (Array<String>)

                The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

            • Make — (map)

              The device make criteria for the segment.

              • DimensionType — (String)

                The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                Possible values include:
                • "INCLUSIVE"
                • "EXCLUSIVE"
              • Valuesrequired — (Array<String>)

                The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

            • Model — (map)

              The device model criteria for the segment.

              • DimensionType — (String)

                The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                Possible values include:
                • "INCLUSIVE"
                • "EXCLUSIVE"
              • Valuesrequired — (Array<String>)

                The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

            • Platform — (map)

              The device platform criteria for the segment.

              • DimensionType — (String)

                The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                Possible values include:
                • "INCLUSIVE"
                • "EXCLUSIVE"
              • Valuesrequired — (Array<String>)

                The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

          • Location — (map)

            The location-based criteria, such as region or GPS coordinates, for the segment.

            • Country — (map)

              The country or region code, in ISO 3166-1 alpha-2 format, for the segment.

              • DimensionType — (String)

                The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                Possible values include:
                • "INCLUSIVE"
                • "EXCLUSIVE"
              • Valuesrequired — (Array<String>)

                The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

            • GPSPoint — (map)

              The GPS location and range for the segment.

              • Coordinatesrequired — (map)

                The GPS coordinates to measure distance from.

                • Latituderequired — (Float)

                  The latitude coordinate of the location.

                • Longituderequired — (Float)

                  The longitude coordinate of the location.

              • RangeInKilometers — (Float)

                The range, in kilometers, from the GPS coordinates.

          • Metrics — (map<map>)

            One or more custom metrics to use as criteria for the segment.

            • ComparisonOperatorrequired — (String)

              The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

            • Valuerequired — (Float)

              The value to compare.

          • UserAttributes — (map<map>)

            One or more custom user attributes to use as criteria for the segment.

            • AttributeType — (String)

              The type of segment dimension to use. Valid values are:

              • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
              • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
              • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
              • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
              • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
              • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
              • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
              • Possible values include:
                • "INCLUSIVE"
                • "EXCLUSIVE"
                • "CONTAINS"
                • "BEFORE"
                • "AFTER"
                • "ON"
                • "BETWEEN"
              • Valuesrequired — (Array<String>)

                The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

          • Name — (String)

            The name of the segment.

          • SegmentGroups — (map)

            The segment group to use and the dimensions to apply to the group's base segments in order to build the segment. A segment group can consist of zero or more base segments. Your request can include only one segment group.

            • Groups — (Array<map>)

              An array that defines the set of segment criteria to evaluate when handling segment groups for the segment.

              • Dimensions — (Array<map>)

                An array that defines the dimensions for the segment.

                • Attributes — (map<map>)

                  One or more custom attributes to use as criteria for the segment.

                  • AttributeType — (String)

                    The type of segment dimension to use. Valid values are:

                    • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                    • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                    • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                    • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                    • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                    • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                    • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                    • Possible values include:
                      • "INCLUSIVE"
                      • "EXCLUSIVE"
                      • "CONTAINS"
                      • "BEFORE"
                      • "AFTER"
                      • "ON"
                      • "BETWEEN"
                    • Valuesrequired — (Array<String>)

                      The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                  • Behavior — (map)

                    The behavior-based criteria, such as how recently users have used your app, for the segment.

                    • Recency — (map)

                      The dimension settings that are based on how recently an endpoint was active.

                      • Durationrequired — (String)

                        The duration to use when determining whether an endpoint is active or inactive.

                        Possible values include:
                        • "HR_24"
                        • "DAY_7"
                        • "DAY_14"
                        • "DAY_30"
                      • RecencyTyperequired — (String)

                        The type of recency dimension to use for the segment. Valid values are: ACTIVE, endpoints that were active within the specified duration are included in the segment; and, INACTIVE, endpoints that weren't active within the specified duration are included in the segment.

                        Possible values include:
                        • "ACTIVE"
                        • "INACTIVE"
                  • Demographic — (map)

                    The demographic-based criteria, such as device platform, for the segment.

                    • AppVersion — (map)

                      The app version criteria for the segment.

                      • DimensionType — (String)

                        The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                        Possible values include:
                        • "INCLUSIVE"
                        • "EXCLUSIVE"
                      • Valuesrequired — (Array<String>)

                        The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                    • Channel — (map)

                      The channel criteria for the segment.

                      • DimensionType — (String)

                        The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                        Possible values include:
                        • "INCLUSIVE"
                        • "EXCLUSIVE"
                      • Valuesrequired — (Array<String>)

                        The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                    • DeviceType — (map)

                      The device type criteria for the segment.

                      • DimensionType — (String)

                        The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                        Possible values include:
                        • "INCLUSIVE"
                        • "EXCLUSIVE"
                      • Valuesrequired — (Array<String>)

                        The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                    • Make — (map)

                      The device make criteria for the segment.

                      • DimensionType — (String)

                        The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                        Possible values include:
                        • "INCLUSIVE"
                        • "EXCLUSIVE"
                      • Valuesrequired — (Array<String>)

                        The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                    • Model — (map)

                      The device model criteria for the segment.

                      • DimensionType — (String)

                        The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                        Possible values include:
                        • "INCLUSIVE"
                        • "EXCLUSIVE"
                      • Valuesrequired — (Array<String>)

                        The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                    • Platform — (map)

                      The device platform criteria for the segment.

                      • DimensionType — (String)

                        The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                        Possible values include:
                        • "INCLUSIVE"
                        • "EXCLUSIVE"
                      • Valuesrequired — (Array<String>)

                        The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                  • Location — (map)

                    The location-based criteria, such as region or GPS coordinates, for the segment.

                    • Country — (map)

                      The country or region code, in ISO 3166-1 alpha-2 format, for the segment.

                      • DimensionType — (String)

                        The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                        Possible values include:
                        • "INCLUSIVE"
                        • "EXCLUSIVE"
                      • Valuesrequired — (Array<String>)

                        The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                    • GPSPoint — (map)

                      The GPS location and range for the segment.

                      • Coordinatesrequired — (map)

                        The GPS coordinates to measure distance from.

                        • Latituderequired — (Float)

                          The latitude coordinate of the location.

                        • Longituderequired — (Float)

                          The longitude coordinate of the location.

                      • RangeInKilometers — (Float)

                        The range, in kilometers, from the GPS coordinates.

                  • Metrics — (map<map>)

                    One or more custom metrics to use as criteria for the segment.

                    • ComparisonOperatorrequired — (String)

                      The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                    • Valuerequired — (Float)

                      The value to compare.

                  • UserAttributes — (map<map>)

                    One or more custom user attributes to use as criteria for the segment.

                    • AttributeType — (String)

                      The type of segment dimension to use. Valid values are:

                      • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                      • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                      • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                      • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                      • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                      • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                      • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                      • Possible values include:
                        • "INCLUSIVE"
                        • "EXCLUSIVE"
                        • "CONTAINS"
                        • "BEFORE"
                        • "AFTER"
                        • "ON"
                        • "BETWEEN"
                      • Valuesrequired — (Array<String>)

                        The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                  • SourceSegments — (Array<map>)

                    The base segment to build the segment on. A base segment, also referred to as a source segment, defines the initial population of endpoints for a segment. When you add dimensions to a segment, Amazon Pinpoint filters the base segment by using the dimensions that you specify.

                    You can specify more than one dimensional segment or only one imported segment. If you specify an imported segment, the Amazon Pinpoint console displays a segment size estimate that indicates the size of the imported segment without any filters applied to it.

                    • Idrequired — (String)

                      The unique identifier for the segment.

                    • Version — (Integer)

                      The version number of the segment.

                  • SourceType — (String)

                    Specifies how to handle multiple base segments for the segment. For example, if you specify three base segments for the segment, whether the resulting segment is based on all, any, or none of the base segments.

                    Possible values include:
                    • "ALL"
                    • "ANY"
                    • "NONE"
                  • Type — (String)

                    Specifies how to handle multiple dimensions for the segment. For example, if you specify three dimensions for the segment, whether the resulting segment includes endpoints that match all, any, or none of the dimensions.

                    Possible values include:
                    • "ALL"
                    • "ANY"
                    • "NONE"
                • Include — (String)

                  Specifies how to handle multiple segment groups for the segment. For example, if the segment includes three segment groups, whether the resulting segment includes endpoints that match all, any, or none of the segment groups.

                  Possible values include:
                  • "ALL"
                  • "ANY"
                  • "NONE"
              • tags — (map<String>)
                Note: As of 22-05-2023 tags has been deprecated for update operations. After this date any value in tags is not processed and an error code is not returned. To manage tags we recommend using either Tags in the API Reference for Amazon Pinpoint, resourcegroupstaggingapi commands in the AWS Command Line Interface Documentation or resourcegroupstaggingapi in the AWS SDK.

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

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • SegmentResponse — (map)

        Provides information about the configuration, dimension, and other settings for a segment.

        • ApplicationIdrequired — (String)

          The unique identifier for the application that the segment is associated with.

        • Arnrequired — (String)

          The Amazon Resource Name (ARN) of the segment.

        • CreationDaterequired — (String)

          The date and time when the segment was created.

        • Dimensions — (map)

          The dimension settings for the segment.

          • Attributes — (map<map>)

            One or more custom attributes to use as criteria for the segment.

            • AttributeType — (String)

              The type of segment dimension to use. Valid values are:

              • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
              • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
              • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
              • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
              • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
              • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
              • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
              • Possible values include:
                • "INCLUSIVE"
                • "EXCLUSIVE"
                • "CONTAINS"
                • "BEFORE"
                • "AFTER"
                • "ON"
                • "BETWEEN"
              • Valuesrequired — (Array<String>)

                The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

            • Behavior — (map)

              The behavior-based criteria, such as how recently users have used your app, for the segment.

              • Recency — (map)

                The dimension settings that are based on how recently an endpoint was active.

                • Durationrequired — (String)

                  The duration to use when determining whether an endpoint is active or inactive.

                  Possible values include:
                  • "HR_24"
                  • "DAY_7"
                  • "DAY_14"
                  • "DAY_30"
                • RecencyTyperequired — (String)

                  The type of recency dimension to use for the segment. Valid values are: ACTIVE, endpoints that were active within the specified duration are included in the segment; and, INACTIVE, endpoints that weren't active within the specified duration are included in the segment.

                  Possible values include:
                  • "ACTIVE"
                  • "INACTIVE"
            • Demographic — (map)

              The demographic-based criteria, such as device platform, for the segment.

              • AppVersion — (map)

                The app version criteria for the segment.

                • DimensionType — (String)

                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                  Possible values include:
                  • "INCLUSIVE"
                  • "EXCLUSIVE"
                • Valuesrequired — (Array<String>)

                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

              • Channel — (map)

                The channel criteria for the segment.

                • DimensionType — (String)

                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                  Possible values include:
                  • "INCLUSIVE"
                  • "EXCLUSIVE"
                • Valuesrequired — (Array<String>)

                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

              • DeviceType — (map)

                The device type criteria for the segment.

                • DimensionType — (String)

                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                  Possible values include:
                  • "INCLUSIVE"
                  • "EXCLUSIVE"
                • Valuesrequired — (Array<String>)

                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

              • Make — (map)

                The device make criteria for the segment.

                • DimensionType — (String)

                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                  Possible values include:
                  • "INCLUSIVE"
                  • "EXCLUSIVE"
                • Valuesrequired — (Array<String>)

                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

              • Model — (map)

                The device model criteria for the segment.

                • DimensionType — (String)

                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                  Possible values include:
                  • "INCLUSIVE"
                  • "EXCLUSIVE"
                • Valuesrequired — (Array<String>)

                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

              • Platform — (map)

                The device platform criteria for the segment.

                • DimensionType — (String)

                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                  Possible values include:
                  • "INCLUSIVE"
                  • "EXCLUSIVE"
                • Valuesrequired — (Array<String>)

                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

            • Location — (map)

              The location-based criteria, such as region or GPS coordinates, for the segment.

              • Country — (map)

                The country or region code, in ISO 3166-1 alpha-2 format, for the segment.

                • DimensionType — (String)

                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                  Possible values include:
                  • "INCLUSIVE"
                  • "EXCLUSIVE"
                • Valuesrequired — (Array<String>)

                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

              • GPSPoint — (map)

                The GPS location and range for the segment.

                • Coordinatesrequired — (map)

                  The GPS coordinates to measure distance from.

                  • Latituderequired — (Float)

                    The latitude coordinate of the location.

                  • Longituderequired — (Float)

                    The longitude coordinate of the location.

                • RangeInKilometers — (Float)

                  The range, in kilometers, from the GPS coordinates.

            • Metrics — (map<map>)

              One or more custom metrics to use as criteria for the segment.

              • ComparisonOperatorrequired — (String)

                The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

              • Valuerequired — (Float)

                The value to compare.

            • UserAttributes — (map<map>)

              One or more custom user attributes to use as criteria for the segment.

              • AttributeType — (String)

                The type of segment dimension to use. Valid values are:

                • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                • Possible values include:
                  • "INCLUSIVE"
                  • "EXCLUSIVE"
                  • "CONTAINS"
                  • "BEFORE"
                  • "AFTER"
                  • "ON"
                  • "BETWEEN"
                • Valuesrequired — (Array<String>)

                  The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

            • Idrequired — (String)

              The unique identifier for the segment.

            • ImportDefinition — (map)

              The settings for the import job that's associated with the segment.

              • ChannelCounts — (map<Integer>)

                The number of channel types in the endpoint definitions that were imported to create the segment.

              • ExternalIdrequired — (String)

                (Deprecated) Your AWS account ID, which you assigned to an external ID key in an IAM trust policy. Amazon Pinpoint previously used this value to assume an IAM role when importing endpoint definitions, but we removed this requirement. We don't recommend use of external IDs for IAM roles that are assumed by Amazon Pinpoint.

              • Formatrequired — (String)

                The format of the files that were imported to create the segment. Valid values are: CSV, for comma-separated values format; and, JSON, for newline-delimited JSON format.

                Possible values include:
                • "CSV"
                • "JSON"
              • RoleArnrequired — (String)

                The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that authorized Amazon Pinpoint to access the Amazon S3 location to import endpoint definitions from.

              • S3Urlrequired — (String)

                The URL of the Amazon Simple Storage Service (Amazon S3) bucket that the endpoint definitions were imported from to create the segment.

              • Sizerequired — (Integer)

                The number of endpoint definitions that were imported successfully to create the segment.

            • LastModifiedDate — (String)

              The date and time when the segment was last modified.

            • Name — (String)

              The name of the segment.

            • SegmentGroups — (map)

              A list of one or more segment groups that apply to the segment. Each segment group consists of zero or more base segments and the dimensions that are applied to those base segments.

              • Groups — (Array<map>)

                An array that defines the set of segment criteria to evaluate when handling segment groups for the segment.

                • Dimensions — (Array<map>)

                  An array that defines the dimensions for the segment.

                  • Attributes — (map<map>)

                    One or more custom attributes to use as criteria for the segment.

                    • AttributeType — (String)

                      The type of segment dimension to use. Valid values are:

                      • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                      • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                      • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                      • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                      • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                      • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                      • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                      • Possible values include:
                        • "INCLUSIVE"
                        • "EXCLUSIVE"
                        • "CONTAINS"
                        • "BEFORE"
                        • "AFTER"
                        • "ON"
                        • "BETWEEN"
                      • Valuesrequired — (Array<String>)

                        The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                    • Behavior — (map)

                      The behavior-based criteria, such as how recently users have used your app, for the segment.

                      • Recency — (map)

                        The dimension settings that are based on how recently an endpoint was active.

                        • Durationrequired — (String)

                          The duration to use when determining whether an endpoint is active or inactive.

                          Possible values include:
                          • "HR_24"
                          • "DAY_7"
                          • "DAY_14"
                          • "DAY_30"
                        • RecencyTyperequired — (String)

                          The type of recency dimension to use for the segment. Valid values are: ACTIVE, endpoints that were active within the specified duration are included in the segment; and, INACTIVE, endpoints that weren't active within the specified duration are included in the segment.

                          Possible values include:
                          • "ACTIVE"
                          • "INACTIVE"
                    • Demographic — (map)

                      The demographic-based criteria, such as device platform, for the segment.

                      • AppVersion — (map)

                        The app version criteria for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • Channel — (map)

                        The channel criteria for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • DeviceType — (map)

                        The device type criteria for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • Make — (map)

                        The device make criteria for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • Model — (map)

                        The device model criteria for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • Platform — (map)

                        The device platform criteria for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                    • Location — (map)

                      The location-based criteria, such as region or GPS coordinates, for the segment.

                      • Country — (map)

                        The country or region code, in ISO 3166-1 alpha-2 format, for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • GPSPoint — (map)

                        The GPS location and range for the segment.

                        • Coordinatesrequired — (map)

                          The GPS coordinates to measure distance from.

                          • Latituderequired — (Float)

                            The latitude coordinate of the location.

                          • Longituderequired — (Float)

                            The longitude coordinate of the location.

                        • RangeInKilometers — (Float)

                          The range, in kilometers, from the GPS coordinates.

                    • Metrics — (map<map>)

                      One or more custom metrics to use as criteria for the segment.

                      • ComparisonOperatorrequired — (String)

                        The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                      • Valuerequired — (Float)

                        The value to compare.

                    • UserAttributes — (map<map>)

                      One or more custom user attributes to use as criteria for the segment.

                      • AttributeType — (String)

                        The type of segment dimension to use. Valid values are:

                        • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                        • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                        • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                        • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                        • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                        • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                        • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                        • Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                          • "CONTAINS"
                          • "BEFORE"
                          • "AFTER"
                          • "ON"
                          • "BETWEEN"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                    • SourceSegments — (Array<map>)

                      The base segment to build the segment on. A base segment, also referred to as a source segment, defines the initial population of endpoints for a segment. When you add dimensions to a segment, Amazon Pinpoint filters the base segment by using the dimensions that you specify.

                      You can specify more than one dimensional segment or only one imported segment. If you specify an imported segment, the Amazon Pinpoint console displays a segment size estimate that indicates the size of the imported segment without any filters applied to it.

                      • Idrequired — (String)

                        The unique identifier for the segment.

                      • Version — (Integer)

                        The version number of the segment.

                    • SourceType — (String)

                      Specifies how to handle multiple base segments for the segment. For example, if you specify three base segments for the segment, whether the resulting segment is based on all, any, or none of the base segments.

                      Possible values include:
                      • "ALL"
                      • "ANY"
                      • "NONE"
                    • Type — (String)

                      Specifies how to handle multiple dimensions for the segment. For example, if you specify three dimensions for the segment, whether the resulting segment includes endpoints that match all, any, or none of the dimensions.

                      Possible values include:
                      • "ALL"
                      • "ANY"
                      • "NONE"
                  • Include — (String)

                    Specifies how to handle multiple segment groups for the segment. For example, if the segment includes three segment groups, whether the resulting segment includes endpoints that match all, any, or none of the segment groups.

                    Possible values include:
                    • "ALL"
                    • "ANY"
                    • "NONE"
                • SegmentTyperequired — (String)

                  The segment type. Valid values are:

                  • DIMENSIONAL - A dynamic segment, which is a segment that uses selection criteria that you specify and is based on endpoint data that's reported by your app. Dynamic segments can change over time.

                  • IMPORT - A static segment, which is a segment that uses selection criteria that you specify and is based on endpoint definitions that you import from a file. Imported segments are static; they don't change over time.

                  Possible values include:
                  • "DIMENSIONAL"
                  • "IMPORT"
                • tags — (map<String>)

                  A string-to-string map of key-value pairs that identifies the tags that are associated with the segment. Each tag consists of a required tag key and an associated tag value.

                • Version — (Integer)

                  The version number of the segment.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

createSmsTemplate(params = {}, callback) ⇒ AWS.Request

Creates a message template for messages that are sent through the SMS channel.

Service Reference:

Examples:

Calling the createSmsTemplate operation

var params = {
  SMSTemplateRequest: { /* required */
    Body: 'STRING_VALUE',
    DefaultSubstitutions: 'STRING_VALUE',
    RecommenderId: 'STRING_VALUE',
    TemplateDescription: 'STRING_VALUE',
    tags: {
      '<__string>': 'STRING_VALUE',
      /* '<__string>': ... */
    }
  },
  TemplateName: 'STRING_VALUE' /* required */
};
pinpoint.createSmsTemplate(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • SMSTemplateRequest — (map)

      Specifies the content and settings for a message template that can be used in text messages that are sent through the SMS channel.

      • Body — (String)

        The message body to use in text messages that are based on the message template.

      • DefaultSubstitutions — (String)

        A JSON object that specifies the default values to use for message variables in the message template. This object is a set of key-value pairs. Each key defines a message variable in the template. The corresponding value defines the default value for that variable. When you create a message that's based on the template, you can override these defaults with message-specific and address-specific variables and values.

      • RecommenderId — (String)

        The unique identifier for the recommender model to use for the message template. Amazon Pinpoint uses this value to determine how to retrieve and process data from a recommender model when it sends messages that use the template, if the template contains message variables for recommendation data.

      • tags — (map<String>)
        Note: As of 22-05-2023 tags has been deprecated for update operations. After this date any value in tags is not processed and an error code is not returned. To manage tags we recommend using either Tags in the API Reference for Amazon Pinpoint, resourcegroupstaggingapi commands in the AWS Command Line Interface Documentation or resourcegroupstaggingapi in the AWS SDK.

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

      • TemplateDescription — (String)

        A custom description of the message template.

    • TemplateName — (String)

      The name of the message template. A template name must start with an alphanumeric character and can contain a maximum of 128 characters. The characters can be alphanumeric characters, underscores (_), or hyphens (-). Template names are case sensitive.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • CreateTemplateMessageBody — (map)

        Provides information about a request to create a message template.

        • Arn — (String)

          The Amazon Resource Name (ARN) of the message template that was created.

        • Message — (String)

          The message that's returned from the API for the request to create the message template.

        • RequestID — (String)

          The unique identifier for the request to create the message template.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

createVoiceTemplate(params = {}, callback) ⇒ AWS.Request

Creates a message template for messages that are sent through the voice channel.

Service Reference:

Examples:

Calling the createVoiceTemplate operation

var params = {
  TemplateName: 'STRING_VALUE', /* required */
  VoiceTemplateRequest: { /* required */
    Body: 'STRING_VALUE',
    DefaultSubstitutions: 'STRING_VALUE',
    LanguageCode: 'STRING_VALUE',
    TemplateDescription: 'STRING_VALUE',
    VoiceId: 'STRING_VALUE',
    tags: {
      '<__string>': 'STRING_VALUE',
      /* '<__string>': ... */
    }
  }
};
pinpoint.createVoiceTemplate(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • TemplateName — (String)

      The name of the message template. A template name must start with an alphanumeric character and can contain a maximum of 128 characters. The characters can be alphanumeric characters, underscores (_), or hyphens (-). Template names are case sensitive.

    • VoiceTemplateRequest — (map)

      Specifies the content and settings for a message template that can be used in messages that are sent through the voice channel.

      • Body — (String)

        The text of the script to use in messages that are based on the message template, in plain text format.

      • DefaultSubstitutions — (String)

        A JSON object that specifies the default values to use for message variables in the message template. This object is a set of key-value pairs. Each key defines a message variable in the template. The corresponding value defines the default value for that variable. When you create a message that's based on the template, you can override these defaults with message-specific and address-specific variables and values.

      • LanguageCode — (String)

        The code for the language to use when synthesizing the text of the script in messages that are based on the message template. For a list of supported languages and the code for each one, see the Amazon Polly Developer Guide.

      • tags — (map<String>)
        Note: As of 22-05-2023 tags has been deprecated for update operations. After this date any value in tags is not processed and an error code is not returned. To manage tags we recommend using either Tags in the API Reference for Amazon Pinpoint, resourcegroupstaggingapi commands in the AWS Command Line Interface Documentation or resourcegroupstaggingapi in the AWS SDK.

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

      • TemplateDescription — (String)

        A custom description of the message template.

      • VoiceId — (String)

        The name of the voice to use when delivering messages that are based on the message template. For a list of supported voices, see the Amazon Polly Developer Guide.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • CreateTemplateMessageBody — (map)

        Provides information about a request to create a message template.

        • Arn — (String)

          The Amazon Resource Name (ARN) of the message template that was created.

        • Message — (String)

          The message that's returned from the API for the request to create the message template.

        • RequestID — (String)

          The unique identifier for the request to create the message template.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

deleteAdmChannel(params = {}, callback) ⇒ AWS.Request

Disables the ADM channel for an application and deletes any existing settings for the channel.

Service Reference:

Examples:

Calling the deleteAdmChannel operation

var params = {
  ApplicationId: 'STRING_VALUE' /* required */
};
pinpoint.deleteAdmChannel(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • ADMChannelResponse — (map)

        Provides information about the status and settings of the ADM (Amazon Device Messaging) channel for an application.

        • ApplicationId — (String)

          The unique identifier for the application that the ADM channel applies to.

        • CreationDate — (String)

          The date and time when the ADM channel was enabled.

        • Enabled — (Boolean)

          Specifies whether the ADM channel is enabled for the application.

        • HasCredential — (Boolean)

          (Not used) This property is retained only for backward compatibility.

        • Id — (String)

          (Deprecated) An identifier for the ADM channel. This property is retained only for backward compatibility.

        • IsArchived — (Boolean)

          Specifies whether the ADM channel is archived.

        • LastModifiedBy — (String)

          The user who last modified the ADM channel.

        • LastModifiedDate — (String)

          The date and time when the ADM channel was last modified.

        • Platformrequired — (String)

          The type of messaging or notification platform for the channel. For the ADM channel, this value is ADM.

        • Version — (Integer)

          The current version of the ADM channel.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

deleteApnsChannel(params = {}, callback) ⇒ AWS.Request

Disables the APNs channel for an application and deletes any existing settings for the channel.

Service Reference:

Examples:

Calling the deleteApnsChannel operation

var params = {
  ApplicationId: 'STRING_VALUE' /* required */
};
pinpoint.deleteApnsChannel(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • APNSChannelResponse — (map)

        Provides information about the status and settings of the APNs (Apple Push Notification service) channel for an application.

        • ApplicationId — (String)

          The unique identifier for the application that the APNs channel applies to.

        • CreationDate — (String)

          The date and time when the APNs channel was enabled.

        • DefaultAuthenticationMethod — (String)

          The default authentication method that Amazon Pinpoint uses to authenticate with APNs for this channel, key or certificate.

        • Enabled — (Boolean)

          Specifies whether the APNs channel is enabled for the application.

        • HasCredential — (Boolean)

          (Not used) This property is retained only for backward compatibility.

        • HasTokenKey — (Boolean)

          Specifies whether the APNs channel is configured to communicate with APNs by using APNs tokens. To provide an authentication key for APNs tokens, set the TokenKey property of the channel.

        • Id — (String)

          (Deprecated) An identifier for the APNs channel. This property is retained only for backward compatibility.

        • IsArchived — (Boolean)

          Specifies whether the APNs channel is archived.

        • LastModifiedBy — (String)

          The user who last modified the APNs channel.

        • LastModifiedDate — (String)

          The date and time when the APNs channel was last modified.

        • Platformrequired — (String)

          The type of messaging or notification platform for the channel. For the APNs channel, this value is APNS.

        • Version — (Integer)

          The current version of the APNs channel.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

deleteApnsSandboxChannel(params = {}, callback) ⇒ AWS.Request

Disables the APNs sandbox channel for an application and deletes any existing settings for the channel.

Service Reference:

Examples:

Calling the deleteApnsSandboxChannel operation

var params = {
  ApplicationId: 'STRING_VALUE' /* required */
};
pinpoint.deleteApnsSandboxChannel(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • APNSSandboxChannelResponse — (map)

        Provides information about the status and settings of the APNs (Apple Push Notification service) sandbox channel for an application.

        • ApplicationId — (String)

          The unique identifier for the application that the APNs sandbox channel applies to.

        • CreationDate — (String)

          The date and time when the APNs sandbox channel was enabled.

        • DefaultAuthenticationMethod — (String)

          The default authentication method that Amazon Pinpoint uses to authenticate with the APNs sandbox environment for this channel, key or certificate.

        • Enabled — (Boolean)

          Specifies whether the APNs sandbox channel is enabled for the application.

        • HasCredential — (Boolean)

          (Not used) This property is retained only for backward compatibility.

        • HasTokenKey — (Boolean)

          Specifies whether the APNs sandbox channel is configured to communicate with APNs by using APNs tokens. To provide an authentication key for APNs tokens, set the TokenKey property of the channel.

        • Id — (String)

          (Deprecated) An identifier for the APNs sandbox channel. This property is retained only for backward compatibility.

        • IsArchived — (Boolean)

          Specifies whether the APNs sandbox channel is archived.

        • LastModifiedBy — (String)

          The user who last modified the APNs sandbox channel.

        • LastModifiedDate — (String)

          The date and time when the APNs sandbox channel was last modified.

        • Platformrequired — (String)

          The type of messaging or notification platform for the channel. For the APNs sandbox channel, this value is APNS_SANDBOX.

        • Version — (Integer)

          The current version of the APNs sandbox channel.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

deleteApnsVoipChannel(params = {}, callback) ⇒ AWS.Request

Disables the APNs VoIP channel for an application and deletes any existing settings for the channel.

Service Reference:

Examples:

Calling the deleteApnsVoipChannel operation

var params = {
  ApplicationId: 'STRING_VALUE' /* required */
};
pinpoint.deleteApnsVoipChannel(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • APNSVoipChannelResponse — (map)

        Provides information about the status and settings of the APNs (Apple Push Notification service) VoIP channel for an application.

        • ApplicationId — (String)

          The unique identifier for the application that the APNs VoIP channel applies to.

        • CreationDate — (String)

          The date and time when the APNs VoIP channel was enabled.

        • DefaultAuthenticationMethod — (String)

          The default authentication method that Amazon Pinpoint uses to authenticate with APNs for this channel, key or certificate.

        • Enabled — (Boolean)

          Specifies whether the APNs VoIP channel is enabled for the application.

        • HasCredential — (Boolean)

          (Not used) This property is retained only for backward compatibility.

        • HasTokenKey — (Boolean)

          Specifies whether the APNs VoIP channel is configured to communicate with APNs by using APNs tokens. To provide an authentication key for APNs tokens, set the TokenKey property of the channel.

        • Id — (String)

          (Deprecated) An identifier for the APNs VoIP channel. This property is retained only for backward compatibility.

        • IsArchived — (Boolean)

          Specifies whether the APNs VoIP channel is archived.

        • LastModifiedBy — (String)

          The user who last modified the APNs VoIP channel.

        • LastModifiedDate — (String)

          The date and time when the APNs VoIP channel was last modified.

        • Platformrequired — (String)

          The type of messaging or notification platform for the channel. For the APNs VoIP channel, this value is APNS_VOIP.

        • Version — (Integer)

          The current version of the APNs VoIP channel.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

deleteApnsVoipSandboxChannel(params = {}, callback) ⇒ AWS.Request

Disables the APNs VoIP sandbox channel for an application and deletes any existing settings for the channel.

Service Reference:

Examples:

Calling the deleteApnsVoipSandboxChannel operation

var params = {
  ApplicationId: 'STRING_VALUE' /* required */
};
pinpoint.deleteApnsVoipSandboxChannel(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • APNSVoipSandboxChannelResponse — (map)

        Provides information about the status and settings of the APNs (Apple Push Notification service) VoIP sandbox channel for an application.

        • ApplicationId — (String)

          The unique identifier for the application that the APNs VoIP sandbox channel applies to.

        • CreationDate — (String)

          The date and time when the APNs VoIP sandbox channel was enabled.

        • DefaultAuthenticationMethod — (String)

          The default authentication method that Amazon Pinpoint uses to authenticate with the APNs sandbox environment for this channel, key or certificate.

        • Enabled — (Boolean)

          Specifies whether the APNs VoIP sandbox channel is enabled for the application.

        • HasCredential — (Boolean)

          (Not used) This property is retained only for backward compatibility.

        • HasTokenKey — (Boolean)

          Specifies whether the APNs VoIP sandbox channel is configured to communicate with APNs by using APNs tokens. To provide an authentication key for APNs tokens, set the TokenKey property of the channel.

        • Id — (String)

          (Deprecated) An identifier for the APNs VoIP sandbox channel. This property is retained only for backward compatibility.

        • IsArchived — (Boolean)

          Specifies whether the APNs VoIP sandbox channel is archived.

        • LastModifiedBy — (String)

          The user who last modified the APNs VoIP sandbox channel.

        • LastModifiedDate — (String)

          The date and time when the APNs VoIP sandbox channel was last modified.

        • Platformrequired — (String)

          The type of messaging or notification platform for the channel. For the APNs VoIP sandbox channel, this value is APNS_VOIP_SANDBOX.

        • Version — (Integer)

          The current version of the APNs VoIP sandbox channel.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

deleteApp(params = {}, callback) ⇒ AWS.Request

Deletes an application.

Service Reference:

Examples:

Calling the deleteApp operation

var params = {
  ApplicationId: 'STRING_VALUE' /* required */
};
pinpoint.deleteApp(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • ApplicationResponse — (map)

        Provides information about an application.

        • Arnrequired — (String)

          The Amazon Resource Name (ARN) of the application.

        • Idrequired — (String)

          The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

        • Namerequired — (String)

          The display name of the application. This name is displayed as the Project name on the Amazon Pinpoint console.

        • tags — (map<String>)

          A string-to-string map of key-value pairs that identifies the tags that are associated with the application. Each tag consists of a required tag key and an associated tag value.

        • CreationDate — (String)

          The date and time when the Application was created.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

deleteBaiduChannel(params = {}, callback) ⇒ AWS.Request

Disables the Baidu channel for an application and deletes any existing settings for the channel.

Service Reference:

Examples:

Calling the deleteBaiduChannel operation

var params = {
  ApplicationId: 'STRING_VALUE' /* required */
};
pinpoint.deleteBaiduChannel(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • BaiduChannelResponse — (map)

        Provides information about the status and settings of the Baidu (Baidu Cloud Push) channel for an application.

        • ApplicationId — (String)

          The unique identifier for the application that the Baidu channel applies to.

        • CreationDate — (String)

          The date and time when the Baidu channel was enabled.

        • Credentialrequired — (String)

          The API key that you received from the Baidu Cloud Push service to communicate with the service.

        • Enabled — (Boolean)

          Specifies whether the Baidu channel is enabled for the application.

        • HasCredential — (Boolean)

          (Not used) This property is retained only for backward compatibility.

        • Id — (String)

          (Deprecated) An identifier for the Baidu channel. This property is retained only for backward compatibility.

        • IsArchived — (Boolean)

          Specifies whether the Baidu channel is archived.

        • LastModifiedBy — (String)

          The user who last modified the Baidu channel.

        • LastModifiedDate — (String)

          The date and time when the Baidu channel was last modified.

        • Platformrequired — (String)

          The type of messaging or notification platform for the channel. For the Baidu channel, this value is BAIDU.

        • Version — (Integer)

          The current version of the Baidu channel.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

deleteCampaign(params = {}, callback) ⇒ AWS.Request

Deletes a campaign from an application.

Service Reference:

Examples:

Calling the deleteCampaign operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  CampaignId: 'STRING_VALUE' /* required */
};
pinpoint.deleteCampaign(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • CampaignId — (String)

      The unique identifier for the campaign.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • CampaignResponse — (map)

        Provides information about the status, configuration, and other settings for a campaign.

        • AdditionalTreatments — (Array<map>)

          An array of responses, one for each treatment that you defined for the campaign, in addition to the default treatment.

          • CustomDeliveryConfiguration — (map)

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

            • DeliveryUrirequired — (String)

              The destination to send the campaign or treatment to. This value can be one of the following:

              • The name or Amazon Resource Name (ARN) of an AWS Lambda function to invoke to handle delivery of the campaign or treatment.

              • The URL for a web application or service that supports HTTPS and can receive the message. The URL has to be a full URL, including the HTTPS protocol.

            • EndpointTypes — (Array<String>)

              The types of endpoints to send the campaign or treatment to. Each valid value maps to a type of channel that you can associate with an endpoint by using the ChannelType property of an endpoint.

          • Idrequired — (String)

            The unique identifier for the treatment.

          • MessageConfiguration — (map)

            The message configuration settings for the treatment.

            • ADMMessage — (map)

              The message that the campaign sends through the ADM (Amazon Device Messaging) channel. If specified, this message overrides the default message.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • APNSMessage — (map)

              The message that the campaign sends through the APNs (Apple Push Notification service) channel. If specified, this message overrides the default message.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • BaiduMessage — (map)

              The message that the campaign sends through the Baidu (Baidu Cloud Push) channel. If specified, this message overrides the default message.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • CustomMessage — (map)

              The message that the campaign sends through a custom channel, as specified by the delivery configuration (CustomDeliveryConfiguration) settings for the campaign. If specified, this message overrides the default message.

              • Data — (String)

                The raw, JSON-formatted string to use as the payload for the message. The maximum size is 5 KB.

            • DefaultMessage — (map)

              The default message that the campaign sends through all the channels that are configured for the campaign.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • EmailMessage — (map)

              The message that the campaign sends through the email channel. If specified, this message overrides the default message.

              • Body — (String)

                The body of the email for recipients whose email clients don't render HTML content.

              • FromAddress — (String)

                The verified email address to send the email from. The default address is the FromAddress specified for the email channel for the application.

              • Headers — (Array<map>)

                The list of MessageHeaders for the email. You can have up to 15 MessageHeaders for each email.

                • Name — (String)

                  The name of the message header. The header name can contain up to 126 characters.

                • Value — (String)

                  The value of the message header. The header value can contain up to 870 characters, including the length of any rendered attributes. For example if you add the {CreationDate} attribute, it renders as YYYY-MM-DDTHH:MM:SS.SSSZ and is 24 characters in length.

              • HtmlBody — (String)

                The body of the email, in HTML format, for recipients whose email clients render HTML content.

              • Title — (String)

                The subject line, or title, of the email.

            • GCMMessage — (map)

              The message that the campaign sends through the GCM channel, which enables Amazon Pinpoint to send push notifications through the Firebase Cloud Messaging (FCM), formerly Google Cloud Messaging (GCM), service. If specified, this message overrides the default message.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • SMSMessage — (map)

              The message that the campaign sends through the SMS channel. If specified, this message overrides the default message.

              • Body — (String)

                The body of the SMS message.

              • MessageType — (String)

                The SMS message type. Valid values are TRANSACTIONAL (for messages that are critical or time-sensitive, such as a one-time passwords) and PROMOTIONAL (for messsages that aren't critical or time-sensitive, such as marketing messages).

                Possible values include:
                • "TRANSACTIONAL"
                • "PROMOTIONAL"
              • OriginationNumber — (String)

                The long code to send the SMS message from. This value should be one of the dedicated long codes that's assigned to your AWS account. Although it isn't required, we recommend that you specify the long code using an E.164 format to ensure prompt and accurate delivery of the message. For example, +12065550100.

              • SenderId — (String)

                The sender ID to display on recipients' devices when they receive the SMS message.

              • EntityId — (String)

                The entity ID or Principal Entity (PE) id received from the regulatory body for sending SMS in your country.

              • TemplateId — (String)

                The template ID received from the regulatory body for sending SMS in your country.

            • InAppMessage — (map)

              The in-app message configuration.

              • Body — (String)

                The message body of the notification, the email body or the text message.

              • Content — (Array<map>)

                In-app message content.

                • BackgroundColor — (String)

                  The background color for the message.

                • BodyConfig — (map)

                  The configuration for the message body.

                  • Alignmentrequired — (String)

                    The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

                    Possible values include:
                    • "LEFT"
                    • "CENTER"
                    • "RIGHT"
                  • Bodyrequired — (String)

                    Message Body.

                  • TextColorrequired — (String)

                    The text color.

                • HeaderConfig — (map)

                  The configuration for the message header.

                  • Alignmentrequired — (String)

                    The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

                    Possible values include:
                    • "LEFT"
                    • "CENTER"
                    • "RIGHT"
                  • Headerrequired — (String)

                    Message Header.

                  • TextColorrequired — (String)

                    The text color.

                • ImageUrl — (String)

                  The image url for the background of message.

                • PrimaryBtn — (map)

                  The first button inside the message.

                  • Android — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                  • DefaultConfig — (map)

                    Default button content.

                    • BackgroundColor — (String)

                      The background color of the button.

                    • BorderRadius — (Integer)

                      The border radius of the button.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                    • Textrequired — (String)

                      Button text.

                    • TextColor — (String)

                      The text color of the button.

                  • IOS — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                  • Web — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                • SecondaryBtn — (map)

                  The second button inside message.

                  • Android — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                  • DefaultConfig — (map)

                    Default button content.

                    • BackgroundColor — (String)

                      The background color of the button.

                    • BorderRadius — (Integer)

                      The border radius of the button.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                    • Textrequired — (String)

                      Button text.

                    • TextColor — (String)

                      The text color of the button.

                  • IOS — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                  • Web — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

              • CustomConfig — (map<String>)

                Custom config to be sent to client.

              • Layout — (String)

                In-app message layout.

                Possible values include:
                • "BOTTOM_BANNER"
                • "TOP_BANNER"
                • "OVERLAYS"
                • "MOBILE_FEED"
                • "MIDDLE_BANNER"
                • "CAROUSEL"
          • Schedule — (map)

            The schedule settings for the treatment.

            • EndTime — (String)

              The scheduled time, in ISO 8601 format, when the campaign ended or will end.

            • EventFilter — (map)

              The type of event that causes the campaign to be sent, if the value of the Frequency property is EVENT.

              • Dimensionsrequired — (map)

                The dimension settings of the event filter for the campaign.

                • Attributes — (map<map>)

                  One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                  • AttributeType — (String)

                    The type of segment dimension to use. Valid values are:

                    • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                    • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                    • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                    • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                    • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                    • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                    • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                    • Possible values include:
                      • "INCLUSIVE"
                      • "EXCLUSIVE"
                      • "CONTAINS"
                      • "BEFORE"
                      • "AFTER"
                      • "ON"
                      • "BETWEEN"
                    • Valuesrequired — (Array<String>)

                      The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                  • EventType — (map)

                    The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                    • DimensionType — (String)

                      The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                      Possible values include:
                      • "INCLUSIVE"
                      • "EXCLUSIVE"
                    • Valuesrequired — (Array<String>)

                      The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                  • Metrics — (map<map>)

                    One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                    • ComparisonOperatorrequired — (String)

                      The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                    • Valuerequired — (Float)

                      The value to compare.

                • FilterTyperequired — (String)

                  The type of event that causes the campaign to be sent. Valid values are: SYSTEM, sends the campaign when a system event occurs; and, ENDPOINT, sends the campaign when an endpoint event (Events resource) occurs.

                  Possible values include:
                  • "SYSTEM"
                  • "ENDPOINT"
              • Frequency — (String)

                Specifies how often the campaign is sent or whether the campaign is sent in response to a specific event.

                Possible values include:
                • "ONCE"
                • "HOURLY"
                • "DAILY"
                • "WEEKLY"
                • "MONTHLY"
                • "EVENT"
                • "IN_APP_EVENT"
              • IsLocalTime — (Boolean)

                Specifies whether the start and end times for the campaign schedule use each recipient's local time. To base the schedule on each recipient's local time, set this value to true.

              • QuietTime — (map)

                The default quiet time for the campaign. Quiet time is a specific time range when a campaign doesn't send messages to endpoints, if all the following conditions are met:

                • The EndpointDemographic.Timezone property of the endpoint is set to a valid value.

                • The current time in the endpoint's time zone is later than or equal to the time specified by the QuietTime.Start property for the campaign.

                • The current time in the endpoint's time zone is earlier than or equal to the time specified by the QuietTime.End property for the campaign.

                If any of the preceding conditions isn't met, the endpoint will receive messages from the campaign, even if quiet time is enabled.

                • End — (String)

                  The specific time when quiet time ends. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

                • Start — (String)

                  The specific time when quiet time begins. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

              • StartTimerequired — (String)

                The scheduled time when the campaign began or will begin. Valid values are: IMMEDIATE, to start the campaign immediately; or, a specific time in ISO 8601 format.

              • Timezone — (String)

                The starting UTC offset for the campaign schedule, if the value of the IsLocalTime property is true. Valid values are: UTC, UTC+01, UTC+02, UTC+03, UTC+03:30, UTC+04, UTC+04:30, UTC+05, UTC+05:30, UTC+05:45, UTC+06, UTC+06:30, UTC+07, UTC+08, UTC+09, UTC+09:30, UTC+10, UTC+10:30, UTC+11, UTC+12, UTC+13, UTC-02, UTC-03, UTC-04, UTC-05, UTC-06, UTC-07, UTC-08, UTC-09, UTC-10, and UTC-11.

            • SizePercentrequired — (Integer)

              The allocated percentage of users (segment members) that the treatment is sent to.

            • State — (map)

              The current status of the treatment.

              • CampaignStatus — (String)

                The current status of the campaign, or the current status of a treatment that belongs to an A/B test campaign.

                If a campaign uses A/B testing, the campaign has a status of COMPLETED only if all campaign treatments have a status of COMPLETED. If you delete the segment that's associated with a campaign, the campaign fails and has a status of DELETED.

                Possible values include:
                • "SCHEDULED"
                • "EXECUTING"
                • "PENDING_NEXT_RUN"
                • "COMPLETED"
                • "PAUSED"
                • "DELETED"
                • "INVALID"
            • TemplateConfiguration — (map)

              The message template to use for the treatment.

              • EmailTemplate — (map)

                The email template to use for the message.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • PushTemplate — (map)

                The push notification template to use for the message.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • SMSTemplate — (map)

                The SMS template to use for the message.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • VoiceTemplate — (map)

                The voice template to use for the message. This object isn't supported for campaigns.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • InAppTemplate — (map)

                The InApp template to use for the message. The InApp template object is not supported for SendMessages.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

            • TreatmentDescription — (String)

              The custom description of the treatment.

            • TreatmentName — (String)

              The custom name of the treatment.

          • ApplicationIdrequired — (String)

            The unique identifier for the application that the campaign applies to.

          • Arnrequired — (String)

            The Amazon Resource Name (ARN) of the campaign.

          • CreationDaterequired — (String)

            The date, in ISO 8601 format, when the campaign was created.

          • CustomDeliveryConfiguration — (map)

            The delivery configuration settings for sending the campaign through a custom channel.

            • DeliveryUrirequired — (String)

              The destination to send the campaign or treatment to. This value can be one of the following:

              • The name or Amazon Resource Name (ARN) of an AWS Lambda function to invoke to handle delivery of the campaign or treatment.

              • The URL for a web application or service that supports HTTPS and can receive the message. The URL has to be a full URL, including the HTTPS protocol.

            • EndpointTypes — (Array<String>)

              The types of endpoints to send the campaign or treatment to. Each valid value maps to a type of channel that you can associate with an endpoint by using the ChannelType property of an endpoint.

          • DefaultState — (map)

            The current status of the campaign's default treatment. This value exists only for campaigns that have more than one treatment.

            • CampaignStatus — (String)

              The current status of the campaign, or the current status of a treatment that belongs to an A/B test campaign.

              If a campaign uses A/B testing, the campaign has a status of COMPLETED only if all campaign treatments have a status of COMPLETED. If you delete the segment that's associated with a campaign, the campaign fails and has a status of DELETED.

              Possible values include:
              • "SCHEDULED"
              • "EXECUTING"
              • "PENDING_NEXT_RUN"
              • "COMPLETED"
              • "PAUSED"
              • "DELETED"
              • "INVALID"
          • Description — (String)

            The custom description of the campaign.

          • HoldoutPercent — (Integer)

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

          • Hook — (map)

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

            • LambdaFunctionName — (String)

              The name or Amazon Resource Name (ARN) of the AWS Lambda function that Amazon Pinpoint invokes to customize a segment for a campaign.

            • Mode — (String)

              The mode that Amazon Pinpoint uses to invoke the AWS Lambda function. Possible values are:

              • FILTER - Invoke the function to customize the segment that's used by a campaign.

              • DELIVERY - (Deprecated) Previously, invoked the function to send a campaign through a custom channel. This functionality is not supported anymore. To send a campaign through a custom channel, use the CustomDeliveryConfiguration and CampaignCustomMessage objects of the campaign.

              Possible values include:
              • "DELIVERY"
              • "FILTER"
            • WebUrl — (String)

              The web URL that Amazon Pinpoint calls to invoke the AWS Lambda function over HTTPS.

          • Idrequired — (String)

            The unique identifier for the campaign.

          • IsPaused — (Boolean)

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

          • LastModifiedDaterequired — (String)

            The date, in ISO 8601 format, when the campaign was last modified.

          • Limits — (map)

            The messaging limits for the campaign.

            • Daily — (Integer)

              The maximum number of messages that a campaign can send to a single endpoint during a 24-hour period. For an application, this value specifies the default limit for the number of messages that campaigns and journeys can send to a single endpoint during a 24-hour period. The maximum value is 100.

            • MaximumDuration — (Integer)

              The maximum amount of time, in seconds, that a campaign can attempt to deliver a message after the scheduled start time for the campaign. The minimum value is 60 seconds.

            • MessagesPerSecond — (Integer)

              The maximum number of messages that a campaign can send each second. For an application, this value specifies the default limit for the number of messages that campaigns can send each second. The minimum value is 1. The maximum value is 20,000.

            • Total — (Integer)

              The maximum number of messages that a campaign can send to a single endpoint during the course of the campaign. If a campaign recurs, this setting applies to all runs of the campaign. The maximum value is 100.

            • Session — (Integer)

              The maximum total number of messages that the campaign can send per user session.

          • MessageConfiguration — (map)

            The message configuration settings for the campaign.

            • ADMMessage — (map)

              The message that the campaign sends through the ADM (Amazon Device Messaging) channel. If specified, this message overrides the default message.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • APNSMessage — (map)

              The message that the campaign sends through the APNs (Apple Push Notification service) channel. If specified, this message overrides the default message.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • BaiduMessage — (map)

              The message that the campaign sends through the Baidu (Baidu Cloud Push) channel. If specified, this message overrides the default message.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • CustomMessage — (map)

              The message that the campaign sends through a custom channel, as specified by the delivery configuration (CustomDeliveryConfiguration) settings for the campaign. If specified, this message overrides the default message.

              • Data — (String)

                The raw, JSON-formatted string to use as the payload for the message. The maximum size is 5 KB.

            • DefaultMessage — (map)

              The default message that the campaign sends through all the channels that are configured for the campaign.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • EmailMessage — (map)

              The message that the campaign sends through the email channel. If specified, this message overrides the default message.

              • Body — (String)

                The body of the email for recipients whose email clients don't render HTML content.

              • FromAddress — (String)

                The verified email address to send the email from. The default address is the FromAddress specified for the email channel for the application.

              • Headers — (Array<map>)

                The list of MessageHeaders for the email. You can have up to 15 MessageHeaders for each email.

                • Name — (String)

                  The name of the message header. The header name can contain up to 126 characters.

                • Value — (String)

                  The value of the message header. The header value can contain up to 870 characters, including the length of any rendered attributes. For example if you add the {CreationDate} attribute, it renders as YYYY-MM-DDTHH:MM:SS.SSSZ and is 24 characters in length.

              • HtmlBody — (String)

                The body of the email, in HTML format, for recipients whose email clients render HTML content.

              • Title — (String)

                The subject line, or title, of the email.

            • GCMMessage — (map)

              The message that the campaign sends through the GCM channel, which enables Amazon Pinpoint to send push notifications through the Firebase Cloud Messaging (FCM), formerly Google Cloud Messaging (GCM), service. If specified, this message overrides the default message.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • SMSMessage — (map)

              The message that the campaign sends through the SMS channel. If specified, this message overrides the default message.

              • Body — (String)

                The body of the SMS message.

              • MessageType — (String)

                The SMS message type. Valid values are TRANSACTIONAL (for messages that are critical or time-sensitive, such as a one-time passwords) and PROMOTIONAL (for messsages that aren't critical or time-sensitive, such as marketing messages).

                Possible values include:
                • "TRANSACTIONAL"
                • "PROMOTIONAL"
              • OriginationNumber — (String)

                The long code to send the SMS message from. This value should be one of the dedicated long codes that's assigned to your AWS account. Although it isn't required, we recommend that you specify the long code using an E.164 format to ensure prompt and accurate delivery of the message. For example, +12065550100.

              • SenderId — (String)

                The sender ID to display on recipients' devices when they receive the SMS message.

              • EntityId — (String)

                The entity ID or Principal Entity (PE) id received from the regulatory body for sending SMS in your country.

              • TemplateId — (String)

                The template ID received from the regulatory body for sending SMS in your country.

            • InAppMessage — (map)

              The in-app message configuration.

              • Body — (String)

                The message body of the notification, the email body or the text message.

              • Content — (Array<map>)

                In-app message content.

                • BackgroundColor — (String)

                  The background color for the message.

                • BodyConfig — (map)

                  The configuration for the message body.

                  • Alignmentrequired — (String)

                    The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

                    Possible values include:
                    • "LEFT"
                    • "CENTER"
                    • "RIGHT"
                  • Bodyrequired — (String)

                    Message Body.

                  • TextColorrequired — (String)

                    The text color.

                • HeaderConfig — (map)

                  The configuration for the message header.

                  • Alignmentrequired — (String)

                    The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

                    Possible values include:
                    • "LEFT"
                    • "CENTER"
                    • "RIGHT"
                  • Headerrequired — (String)

                    Message Header.

                  • TextColorrequired — (String)

                    The text color.

                • ImageUrl — (String)

                  The image url for the background of message.

                • PrimaryBtn — (map)

                  The first button inside the message.

                  • Android — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                  • DefaultConfig — (map)

                    Default button content.

                    • BackgroundColor — (String)

                      The background color of the button.

                    • BorderRadius — (Integer)

                      The border radius of the button.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                    • Textrequired — (String)

                      Button text.

                    • TextColor — (String)

                      The text color of the button.

                  • IOS — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                  • Web — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                • SecondaryBtn — (map)

                  The second button inside message.

                  • Android — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                  • DefaultConfig — (map)

                    Default button content.

                    • BackgroundColor — (String)

                      The background color of the button.

                    • BorderRadius — (Integer)

                      The border radius of the button.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                    • Textrequired — (String)

                      Button text.

                    • TextColor — (String)

                      The text color of the button.

                  • IOS — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                  • Web — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

              • CustomConfig — (map<String>)

                Custom config to be sent to client.

              • Layout — (String)

                In-app message layout.

                Possible values include:
                • "BOTTOM_BANNER"
                • "TOP_BANNER"
                • "OVERLAYS"
                • "MOBILE_FEED"
                • "MIDDLE_BANNER"
                • "CAROUSEL"
          • Name — (String)

            The name of the campaign.

          • Schedule — (map)

            The schedule settings for the campaign.

            • EndTime — (String)

              The scheduled time, in ISO 8601 format, when the campaign ended or will end.

            • EventFilter — (map)

              The type of event that causes the campaign to be sent, if the value of the Frequency property is EVENT.

              • Dimensionsrequired — (map)

                The dimension settings of the event filter for the campaign.

                • Attributes — (map<map>)

                  One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                  • AttributeType — (String)

                    The type of segment dimension to use. Valid values are:

                    • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                    • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                    • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                    • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                    • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                    • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                    • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                    • Possible values include:
                      • "INCLUSIVE"
                      • "EXCLUSIVE"
                      • "CONTAINS"
                      • "BEFORE"
                      • "AFTER"
                      • "ON"
                      • "BETWEEN"
                    • Valuesrequired — (Array<String>)

                      The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                  • EventType — (map)

                    The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                    • DimensionType — (String)

                      The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                      Possible values include:
                      • "INCLUSIVE"
                      • "EXCLUSIVE"
                    • Valuesrequired — (Array<String>)

                      The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                  • Metrics — (map<map>)

                    One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                    • ComparisonOperatorrequired — (String)

                      The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                    • Valuerequired — (Float)

                      The value to compare.

                • FilterTyperequired — (String)

                  The type of event that causes the campaign to be sent. Valid values are: SYSTEM, sends the campaign when a system event occurs; and, ENDPOINT, sends the campaign when an endpoint event (Events resource) occurs.

                  Possible values include:
                  • "SYSTEM"
                  • "ENDPOINT"
              • Frequency — (String)

                Specifies how often the campaign is sent or whether the campaign is sent in response to a specific event.

                Possible values include:
                • "ONCE"
                • "HOURLY"
                • "DAILY"
                • "WEEKLY"
                • "MONTHLY"
                • "EVENT"
                • "IN_APP_EVENT"
              • IsLocalTime — (Boolean)

                Specifies whether the start and end times for the campaign schedule use each recipient's local time. To base the schedule on each recipient's local time, set this value to true.

              • QuietTime — (map)

                The default quiet time for the campaign. Quiet time is a specific time range when a campaign doesn't send messages to endpoints, if all the following conditions are met:

                • The EndpointDemographic.Timezone property of the endpoint is set to a valid value.

                • The current time in the endpoint's time zone is later than or equal to the time specified by the QuietTime.Start property for the campaign.

                • The current time in the endpoint's time zone is earlier than or equal to the time specified by the QuietTime.End property for the campaign.

                If any of the preceding conditions isn't met, the endpoint will receive messages from the campaign, even if quiet time is enabled.

                • End — (String)

                  The specific time when quiet time ends. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

                • Start — (String)

                  The specific time when quiet time begins. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

              • StartTimerequired — (String)

                The scheduled time when the campaign began or will begin. Valid values are: IMMEDIATE, to start the campaign immediately; or, a specific time in ISO 8601 format.

              • Timezone — (String)

                The starting UTC offset for the campaign schedule, if the value of the IsLocalTime property is true. Valid values are: UTC, UTC+01, UTC+02, UTC+03, UTC+03:30, UTC+04, UTC+04:30, UTC+05, UTC+05:30, UTC+05:45, UTC+06, UTC+06:30, UTC+07, UTC+08, UTC+09, UTC+09:30, UTC+10, UTC+10:30, UTC+11, UTC+12, UTC+13, UTC-02, UTC-03, UTC-04, UTC-05, UTC-06, UTC-07, UTC-08, UTC-09, UTC-10, and UTC-11.

            • SegmentIdrequired — (String)

              The unique identifier for the segment that's associated with the campaign.

            • SegmentVersionrequired — (Integer)

              The version number of the segment that's associated with the campaign.

            • State — (map)

              The current status of the campaign.

              • CampaignStatus — (String)

                The current status of the campaign, or the current status of a treatment that belongs to an A/B test campaign.

                If a campaign uses A/B testing, the campaign has a status of COMPLETED only if all campaign treatments have a status of COMPLETED. If you delete the segment that's associated with a campaign, the campaign fails and has a status of DELETED.

                Possible values include:
                • "SCHEDULED"
                • "EXECUTING"
                • "PENDING_NEXT_RUN"
                • "COMPLETED"
                • "PAUSED"
                • "DELETED"
                • "INVALID"
            • tags — (map<String>)

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

            • TemplateConfiguration — (map)

              The message template that’s used for the campaign.

              • EmailTemplate — (map)

                The email template to use for the message.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • PushTemplate — (map)

                The push notification template to use for the message.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • SMSTemplate — (map)

                The SMS template to use for the message.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • VoiceTemplate — (map)

                The voice template to use for the message. This object isn't supported for campaigns.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • InAppTemplate — (map)

                The InApp template to use for the message. The InApp template object is not supported for SendMessages.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

            • TreatmentDescription — (String)

              The custom description of the default treatment for the campaign.

            • TreatmentName — (String)

              The 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.

            • Version — (Integer)

              The version number of the campaign.

            • Priority — (Integer)

              Defines the priority of the campaign, used to decide the order of messages displayed to user if there are multiple messages scheduled to be displayed at the same moment.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

deleteEmailChannel(params = {}, callback) ⇒ AWS.Request

Disables the email channel for an application and deletes any existing settings for the channel.

Service Reference:

Examples:

Calling the deleteEmailChannel operation

var params = {
  ApplicationId: 'STRING_VALUE' /* required */
};
pinpoint.deleteEmailChannel(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • EmailChannelResponse — (map)

        Provides information about the status and settings of the email channel for an application.

        • ApplicationId — (String)

          The unique identifier for the application that the email channel applies to.

        • ConfigurationSet — (String)

          The Amazon SES configuration set that's applied to messages that are sent through the channel.

        • CreationDate — (String)

          The date and time, in ISO 8601 format, when the email channel was enabled.

        • Enabled — (Boolean)

          Specifies whether the email channel is enabled for the application.

        • FromAddress — (String)

          The verified email address that email is sent from when you send email through the channel.

        • HasCredential — (Boolean)

          (Not used) This property is retained only for backward compatibility.

        • Id — (String)

          (Deprecated) An identifier for the email channel. This property is retained only for backward compatibility.

        • Identity — (String)

          The Amazon Resource Name (ARN) of the identity, verified with Amazon Simple Email Service (Amazon SES), that's used when you send email through the channel.

        • IsArchived — (Boolean)

          Specifies whether the email channel is archived.

        • LastModifiedBy — (String)

          The user who last modified the email channel.

        • LastModifiedDate — (String)

          The date and time, in ISO 8601 format, when the email channel was last modified.

        • MessagesPerSecond — (Integer)

          The maximum number of emails that can be sent through the channel each second.

        • Platformrequired — (String)

          The type of messaging or notification platform for the channel. For the email channel, this value is EMAIL.

        • RoleArn — (String)

          The ARN of the AWS Identity and Access Management (IAM) role that Amazon Pinpoint uses to submit email-related event data for the channel.

        • OrchestrationSendingRoleArn — (String)

          The ARN of an IAM role for Amazon Pinpoint to use to send email from your campaigns or journeys through Amazon SES.

        • Version — (Integer)

          The current version of the email channel.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

deleteEmailTemplate(params = {}, callback) ⇒ AWS.Request

Deletes a message template for messages that were sent through the email channel.

Service Reference:

Examples:

Calling the deleteEmailTemplate operation

var params = {
  TemplateName: 'STRING_VALUE', /* required */
  Version: 'STRING_VALUE'
};
pinpoint.deleteEmailTemplate(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • TemplateName — (String)

      The name of the message template. A template name must start with an alphanumeric character and can contain a maximum of 128 characters. The characters can be alphanumeric characters, underscores (_), or hyphens (-). Template names are case sensitive.

    • Version — (String)

      The unique identifier for the version of the message template to update, retrieve information about, or delete. To retrieve identifiers and other information for all the versions of a template, use the Template Versions resource.

      If specified, this value must match the identifier for an existing template version. If specified for an update operation, this value must match the identifier for the latest existing version of the template. This restriction helps ensure that race conditions don't occur.

      If you don't specify a value for this parameter, Amazon Pinpoint does the following:

      • For a get operation, retrieves information about the active version of the template.

      • For an update operation, saves the updates to (overwrites) the latest existing version of the template, if the create-new-version parameter isn't used or is set to false.

      • For a delete operation, deletes the template, including all versions of the template.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • MessageBody — (map)

        Provides information about an API request or response.

        • Message — (String)

          The message that's returned from the API.

        • RequestID — (String)

          The unique identifier for the request or response.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

deleteEndpoint(params = {}, callback) ⇒ AWS.Request

Deletes an endpoint from an application.

Service Reference:

Examples:

Calling the deleteEndpoint operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  EndpointId: 'STRING_VALUE' /* required */
};
pinpoint.deleteEndpoint(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • EndpointId — (String)

      The case insensitive unique identifier for the endpoint. The identifier can't contain $, { or }.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • EndpointResponse — (map)

        Provides information about the channel type and other settings for an endpoint.

        • Address — (String)

          The destination address for messages or push notifications that you send to the endpoint. The address varies by channel. For example, the address for a push-notification channel is typically the token provided by a push notification service, such as an Apple Push Notification service (APNs) device token or a Firebase Cloud Messaging (FCM) registration token. The address for the SMS channel is a phone number in E.164 format, such as +12065550100. The address for the email channel is an email address.

        • ApplicationId — (String)

          The unique identifier for the application that's associated with the endpoint.

        • Attributes — (map<Array<String>>)

          One or more custom attributes that describe the endpoint by associating a name with an array of values. For example, the value of a custom attribute named Interests might be: ["Science", "Music", "Travel"]. You can use these attributes as filter criteria when you create segments.

        • ChannelType — (String)

          The channel that's used when sending messages or push notifications to the endpoint.

          Possible values include:
          • "PUSH"
          • "GCM"
          • "APNS"
          • "APNS_SANDBOX"
          • "APNS_VOIP"
          • "APNS_VOIP_SANDBOX"
          • "ADM"
          • "SMS"
          • "VOICE"
          • "EMAIL"
          • "BAIDU"
          • "CUSTOM"
          • "IN_APP"
        • CohortId — (String)

          A number from 0-99 that represents the cohort that the endpoint is assigned to. Endpoints are grouped into cohorts randomly, and each cohort contains approximately 1 percent of the endpoints for an application. Amazon Pinpoint assigns cohorts to the holdout or treatment allocations for campaigns.

        • CreationDate — (String)

          The date and time, in ISO 8601 format, when the endpoint was created.

        • Demographic — (map)

          The demographic information for the endpoint, such as the time zone and platform.

          • AppVersion — (String)

            The version of the app that's associated with the endpoint.

          • Locale — (String)

            The locale of the endpoint, in the following format: the ISO 639-1 alpha-2 code, followed by an underscore (_), followed by an ISO 3166-1 alpha-2 value.

          • Make — (String)

            The manufacturer of the endpoint device, such as apple or samsung.

          • Model — (String)

            The model name or number of the endpoint device, such as iPhone or SM-G900F.

          • ModelVersion — (String)

            The model version of the endpoint device.

          • Platform — (String)

            The platform of the endpoint device, such as ios.

          • PlatformVersion — (String)

            The platform version of the endpoint device.

          • Timezone — (String)

            The time zone of the endpoint, specified as a tz database name value, such as America/Los_Angeles.

        • EffectiveDate — (String)

          The date and time, in ISO 8601 format, when the endpoint was last updated.

        • EndpointStatus — (String)

          Specifies whether messages or push notifications are sent to the endpoint. Possible values are: ACTIVE, messages are sent to the endpoint; and, INACTIVE, messages aren’t sent to the endpoint.

          Amazon Pinpoint automatically sets this value to ACTIVE when you create an endpoint or update an existing endpoint. Amazon Pinpoint automatically sets this value to INACTIVE if you update another endpoint that has the same address specified by the Address property.

        • Id — (String)

          The unique identifier that you assigned to the endpoint. The identifier should be a globally unique identifier (GUID) to ensure that it doesn't conflict with other endpoint identifiers that are associated with the application.

        • Location — (map)

          The geographic information for the endpoint.

          • City — (String)

            The name of the city where the endpoint is located.

          • Country — (String)

            The two-character code, in ISO 3166-1 alpha-2 format, for the country or region where the endpoint is located. For example, US for the United States.

          • Latitude — (Float)

            The latitude coordinate of the endpoint location, rounded to one decimal place.

          • Longitude — (Float)

            The longitude coordinate of the endpoint location, rounded to one decimal place.

          • PostalCode — (String)

            The postal or ZIP code for the area where the endpoint is located.

          • Region — (String)

            The name of the region where the endpoint is located. For locations in the United States, this value is the name of a state.

        • Metrics — (map<Float>)

          One or more custom metrics that your app reports to Amazon Pinpoint for the endpoint.

        • OptOut — (String)

          Specifies whether the user who's associated with the endpoint has opted out of receiving messages and push notifications from you. Possible values are: ALL, the user has opted out and doesn't want to receive any messages or push notifications; and, NONE, the user hasn't opted out and wants to receive all messages and push notifications.

        • RequestId — (String)

          The unique identifier for the most recent request to update the endpoint.

        • User — (map)

          One or more custom user attributes that your app reports to Amazon Pinpoint for the user who's associated with the endpoint.

          • UserAttributes — (map<Array<String>>)

            One or more custom attributes that describe the user by associating a name with an array of values. For example, the value of an attribute named Interests might be: ["Science", "Music", "Travel"]. You can use these attributes as filter criteria when you create segments. Attribute names are case sensitive.

            An attribute name can contain up to 50 characters. An attribute value can contain up to 100 characters. When you define the name of a custom attribute, avoid using the following characters: number sign (#), colon (:), question mark (?), backslash (), and slash (/). The Amazon Pinpoint console can't display attribute names that contain these characters. This restriction doesn't apply to attribute values.

          • UserId — (String)

            The unique identifier for the user.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

deleteEventStream(params = {}, callback) ⇒ AWS.Request

Deletes the event stream for an application.

Service Reference:

Examples:

Calling the deleteEventStream operation

var params = {
  ApplicationId: 'STRING_VALUE' /* required */
};
pinpoint.deleteEventStream(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • EventStream — (map)

        Specifies settings for publishing event data to an Amazon Kinesis data stream or an Amazon Kinesis Data Firehose delivery stream.

        • ApplicationIdrequired — (String)

          The unique identifier for the application to publish event data for.

        • DestinationStreamArnrequired — (String)

          The Amazon Resource Name (ARN) of the Amazon Kinesis data stream or Amazon Kinesis Data Firehose delivery stream to publish event data to.

          For a Kinesis data stream, the ARN format is: arn:aws:kinesis:region:account-id:stream/stream_name

          For a Kinesis Data Firehose delivery stream, the ARN format is: arn:aws:firehose:region:account-id:deliverystream/stream_name

        • ExternalId — (String)

          (Deprecated) Your AWS account ID, which you assigned to an external ID key in an IAM trust policy. Amazon Pinpoint previously used this value to assume an IAM role when publishing event data, but we removed this requirement. We don't recommend use of external IDs for IAM roles that are assumed by Amazon Pinpoint.

        • LastModifiedDate — (String)

          The date, in ISO 8601 format, when the event stream was last modified.

        • LastUpdatedBy — (String)

          The IAM user who last modified the event stream.

        • RoleArnrequired — (String)

          The AWS Identity and Access Management (IAM) role that authorizes Amazon Pinpoint to publish event data to the stream in your AWS account.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

deleteGcmChannel(params = {}, callback) ⇒ AWS.Request

Disables the GCM channel for an application and deletes any existing settings for the channel.

Service Reference:

Examples:

Calling the deleteGcmChannel operation

var params = {
  ApplicationId: 'STRING_VALUE' /* required */
};
pinpoint.deleteGcmChannel(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • GCMChannelResponse — (map)

        Provides information about the status and settings of the GCM channel for an application. The GCM channel enables Amazon Pinpoint to send push notifications through the Firebase Cloud Messaging (FCM), formerly Google Cloud Messaging (GCM), service.

        • ApplicationId — (String)

          The unique identifier for the application that the GCM channel applies to.

        • CreationDate — (String)

          The date and time when the GCM channel was enabled.

        • Credential — (String)

          The Web API Key, also referred to as an API_KEY or server key, that you received from Google to communicate with Google services.

        • DefaultAuthenticationMethod — (String)

          The default authentication method used for GCM. Values are either "TOKEN" or "KEY". Defaults to "KEY".

        • Enabled — (Boolean)

          Specifies whether the GCM channel is enabled for the application.

        • HasCredential — (Boolean)

          (Not used) This property is retained only for backward compatibility.

        • HasFcmServiceCredentials — (Boolean)

          Returns true if the JSON file provided by Google during registration process was used in the ServiceJson field of the request.

        • Id — (String)

          (Deprecated) An identifier for the GCM channel. This property is retained only for backward compatibility.

        • IsArchived — (Boolean)

          Specifies whether the GCM channel is archived.

        • LastModifiedBy — (String)

          The user who last modified the GCM channel.

        • LastModifiedDate — (String)

          The date and time when the GCM channel was last modified.

        • Platformrequired — (String)

          The type of messaging or notification platform for the channel. For the GCM channel, this value is GCM.

        • Version — (Integer)

          The current version of the GCM channel.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

deleteInAppTemplate(params = {}, callback) ⇒ AWS.Request

Deletes a message template for messages sent using the in-app message channel.

Service Reference:

Examples:

Calling the deleteInAppTemplate operation

var params = {
  TemplateName: 'STRING_VALUE', /* required */
  Version: 'STRING_VALUE'
};
pinpoint.deleteInAppTemplate(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • TemplateName — (String)

      The name of the message template. A template name must start with an alphanumeric character and can contain a maximum of 128 characters. The characters can be alphanumeric characters, underscores (_), or hyphens (-). Template names are case sensitive.

    • Version — (String)

      The unique identifier for the version of the message template to update, retrieve information about, or delete. To retrieve identifiers and other information for all the versions of a template, use the Template Versions resource.

      If specified, this value must match the identifier for an existing template version. If specified for an update operation, this value must match the identifier for the latest existing version of the template. This restriction helps ensure that race conditions don't occur.

      If you don't specify a value for this parameter, Amazon Pinpoint does the following:

      • For a get operation, retrieves information about the active version of the template.

      • For an update operation, saves the updates to (overwrites) the latest existing version of the template, if the create-new-version parameter isn't used or is set to false.

      • For a delete operation, deletes the template, including all versions of the template.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • MessageBody — (map)

        Provides information about an API request or response.

        • Message — (String)

          The message that's returned from the API.

        • RequestID — (String)

          The unique identifier for the request or response.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

deleteJourney(params = {}, callback) ⇒ AWS.Request

Deletes a journey from an application.

Service Reference:

Examples:

Calling the deleteJourney operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  JourneyId: 'STRING_VALUE' /* required */
};
pinpoint.deleteJourney(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • JourneyId — (String)

      The unique identifier for the journey.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • JourneyResponse — (map)

        Provides information about the status, configuration, and other settings for a journey.

        • Activities — (map<map>)

          A map that contains a set of Activity objects, one object for each activity in the journey. For each Activity object, the key is the unique identifier (string) for an activity and the value is the settings for the activity.

          • CUSTOM — (map)

            The settings for a custom message activity. This type of activity calls an AWS Lambda function or web hook that sends messages to participants.

            • DeliveryUri — (String)

              The destination to send the campaign or treatment to. This value can be one of the following:

              • The name or Amazon Resource Name (ARN) of an AWS Lambda function to invoke to handle delivery of the campaign or treatment.

              • The URL for a web application or service that supports HTTPS and can receive the message. The URL has to be a full URL, including the HTTPS protocol.

            • EndpointTypes — (Array<String>)

              The types of endpoints to send the custom message to. Each valid value maps to a type of channel that you can associate with an endpoint by using the ChannelType property of an endpoint.

            • MessageConfig — (map)

              Specifies the message data included in a custom channel message that's sent to participants in a journey.

              • Data — (String)

                The message content that's passed to an AWS Lambda function or to a web hook.

            • NextActivity — (String)

              The unique identifier for the next activity to perform, after Amazon Pinpoint calls the AWS Lambda function or web hook.

            • TemplateName — (String)

              The name of the custom message template to use for the message. If specified, this value must match the name of an existing message template.

            • TemplateVersion — (String)

              The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

              If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

          • ConditionalSplit — (map)

            The settings for a yes/no split activity. This type of activity sends participants down one of two paths in a journey, based on conditions that you specify.

            • Condition — (map)

              The conditions that define the paths for the activity, and the relationship between the conditions.

              • Conditions — (Array<map>)

                The conditions to evaluate for the activity.

                • EventCondition — (map)

                  The dimension settings for the event that's associated with the activity.

                  • Dimensions — (map)

                    The dimensions for the event filter to use for the activity.

                    • Attributes — (map<map>)

                      One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                      • AttributeType — (String)

                        The type of segment dimension to use. Valid values are:

                        • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                        • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                        • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                        • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                        • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                        • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                        • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                        • Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                          • "CONTAINS"
                          • "BEFORE"
                          • "AFTER"
                          • "ON"
                          • "BETWEEN"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                      • EventType — (map)

                        The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • Metrics — (map<map>)

                        One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                        • ComparisonOperatorrequired — (String)

                          The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                        • Valuerequired — (Float)

                          The value to compare.

                    • MessageActivity — (String)

                      The message identifier (message_id) for the message to use when determining whether message events meet the condition.

                  • SegmentCondition — (map)

                    The segment that's associated with the activity.

                    • SegmentIdrequired — (String)

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

                  • SegmentDimensions — (map)

                    The dimension settings for the segment that's associated with the activity.

                    • Attributes — (map<map>)

                      One or more custom attributes to use as criteria for the segment.

                      • AttributeType — (String)

                        The type of segment dimension to use. Valid values are:

                        • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                        • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                        • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                        • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                        • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                        • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                        • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                        • Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                          • "CONTAINS"
                          • "BEFORE"
                          • "AFTER"
                          • "ON"
                          • "BETWEEN"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                      • Behavior — (map)

                        The behavior-based criteria, such as how recently users have used your app, for the segment.

                        • Recency — (map)

                          The dimension settings that are based on how recently an endpoint was active.

                          • Durationrequired — (String)

                            The duration to use when determining whether an endpoint is active or inactive.

                            Possible values include:
                            • "HR_24"
                            • "DAY_7"
                            • "DAY_14"
                            • "DAY_30"
                          • RecencyTyperequired — (String)

                            The type of recency dimension to use for the segment. Valid values are: ACTIVE, endpoints that were active within the specified duration are included in the segment; and, INACTIVE, endpoints that weren't active within the specified duration are included in the segment.

                            Possible values include:
                            • "ACTIVE"
                            • "INACTIVE"
                      • Demographic — (map)

                        The demographic-based criteria, such as device platform, for the segment.

                        • AppVersion — (map)

                          The app version criteria for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • Channel — (map)

                          The channel criteria for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • DeviceType — (map)

                          The device type criteria for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • Make — (map)

                          The device make criteria for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • Model — (map)

                          The device model criteria for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • Platform — (map)

                          The device platform criteria for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • Location — (map)

                        The location-based criteria, such as region or GPS coordinates, for the segment.

                        • Country — (map)

                          The country or region code, in ISO 3166-1 alpha-2 format, for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • GPSPoint — (map)

                          The GPS location and range for the segment.

                          • Coordinatesrequired — (map)

                            The GPS coordinates to measure distance from.

                            • Latituderequired — (Float)

                              The latitude coordinate of the location.

                            • Longituderequired — (Float)

                              The longitude coordinate of the location.

                          • RangeInKilometers — (Float)

                            The range, in kilometers, from the GPS coordinates.

                      • Metrics — (map<map>)

                        One or more custom metrics to use as criteria for the segment.

                        • ComparisonOperatorrequired — (String)

                          The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                        • Valuerequired — (Float)

                          The value to compare.

                      • UserAttributes — (map<map>)

                        One or more custom user attributes to use as criteria for the segment.

                        • AttributeType — (String)

                          The type of segment dimension to use. Valid values are:

                          • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                          • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                          • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                          • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                          • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                          • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                          • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                          • Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                            • "CONTAINS"
                            • "BEFORE"
                            • "AFTER"
                            • "ON"
                            • "BETWEEN"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                    • Operator — (String)

                      Specifies how to handle multiple conditions for the activity. For example, if you specify two conditions for an activity, whether both or only one of the conditions must be met for the activity to be performed.

                      Possible values include:
                      • "ALL"
                      • "ANY"
                  • EvaluationWaitTime — (map)

                    The amount of time to wait before determining whether the conditions are met, or the date and time when Amazon Pinpoint determines whether the conditions are met.

                    • WaitFor — (String)

                      The amount of time to wait, as a duration in ISO 8601 format, before determining whether the activity's conditions have been met or moving participants to the next activity in the journey.

                    • WaitUntil — (String)

                      The date and time, in ISO 8601 format, when Amazon Pinpoint determines whether the activity's conditions have been met or the activity moves participants to the next activity in the journey.

                  • FalseActivity — (String)

                    The unique identifier for the activity to perform if the conditions aren't met.

                  • TrueActivity — (String)

                    The unique identifier for the activity to perform if the conditions are met.

                • Description — (String)

                  The custom description of the activity.

                • EMAIL — (map)

                  The settings for an email activity. This type of activity sends an email message to participants.

                  • MessageConfig — (map)

                    Specifies the sender address for an email message that's sent to participants in the journey.

                    • FromAddress — (String)

                      The verified email address to send the email message from. The default address is the FromAddress specified for the email channel for the application.

                  • NextActivity — (String)

                    The unique identifier for the next activity to perform, after the message is sent.

                  • TemplateName — (String)

                    The name of the email message template to use for the message. If specified, this value must match the name of an existing message template.

                  • TemplateVersion — (String)

                    The unique identifier for the version of the email template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                    If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

                • Holdout — (map)

                  The settings for a holdout activity. This type of activity stops a journey for a specified percentage of participants.

                  • NextActivity — (String)

                    The unique identifier for the next activity to perform, after performing the holdout activity.

                  • Percentagerequired — (Integer)

                    The percentage of participants who shouldn't continue the journey.

                    To determine which participants are held out, Amazon Pinpoint applies a probability-based algorithm to the percentage that you specify. Therefore, the actual percentage of participants who are held out may not be equal to the percentage that you specify.

                • MultiCondition — (map)

                  The settings for a multivariate split activity. This type of activity sends participants down one of as many as five paths (including a default Else path) in a journey, based on conditions that you specify.

                  • Branches — (Array<map>)

                    The paths for the activity, including the conditions for entering each path and the activity to perform for each path.

                    • Condition — (map)

                      The condition to evaluate for the activity path.

                      • EventCondition — (map)

                        The dimension settings for the event that's associated with the activity.

                        • Dimensions — (map)

                          The dimensions for the event filter to use for the activity.

                          • Attributes — (map<map>)

                            One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                            • AttributeType — (String)

                              The type of segment dimension to use. Valid values are:

                              • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                              • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                              • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                              • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                              • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                              • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                              • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                              • Possible values include:
                                • "INCLUSIVE"
                                • "EXCLUSIVE"
                                • "CONTAINS"
                                • "BEFORE"
                                • "AFTER"
                                • "ON"
                                • "BETWEEN"
                              • Valuesrequired — (Array<String>)

                                The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                            • EventType — (map)

                              The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                              • DimensionType — (String)

                                The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                Possible values include:
                                • "INCLUSIVE"
                                • "EXCLUSIVE"
                              • Valuesrequired — (Array<String>)

                                The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                            • Metrics — (map<map>)

                              One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                              • ComparisonOperatorrequired — (String)

                                The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                              • Valuerequired — (Float)

                                The value to compare.

                          • MessageActivity — (String)

                            The message identifier (message_id) for the message to use when determining whether message events meet the condition.

                        • SegmentCondition — (map)

                          The segment that's associated with the activity.

                          • SegmentIdrequired — (String)

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

                        • SegmentDimensions — (map)

                          The dimension settings for the segment that's associated with the activity.

                          • Attributes — (map<map>)

                            One or more custom attributes to use as criteria for the segment.

                            • AttributeType — (String)

                              The type of segment dimension to use. Valid values are:

                              • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                              • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                              • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                              • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                              • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                              • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                              • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                              • Possible values include:
                                • "INCLUSIVE"
                                • "EXCLUSIVE"
                                • "CONTAINS"
                                • "BEFORE"
                                • "AFTER"
                                • "ON"
                                • "BETWEEN"
                              • Valuesrequired — (Array<String>)

                                The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                            • Behavior — (map)

                              The behavior-based criteria, such as how recently users have used your app, for the segment.

                              • Recency — (map)

                                The dimension settings that are based on how recently an endpoint was active.

                                • Durationrequired — (String)

                                  The duration to use when determining whether an endpoint is active or inactive.

                                  Possible values include:
                                  • "HR_24"
                                  • "DAY_7"
                                  • "DAY_14"
                                  • "DAY_30"
                                • RecencyTyperequired — (String)

                                  The type of recency dimension to use for the segment. Valid values are: ACTIVE, endpoints that were active within the specified duration are included in the segment; and, INACTIVE, endpoints that weren't active within the specified duration are included in the segment.

                                  Possible values include:
                                  • "ACTIVE"
                                  • "INACTIVE"
                            • Demographic — (map)

                              The demographic-based criteria, such as device platform, for the segment.

                              • AppVersion — (map)

                                The app version criteria for the segment.

                                • DimensionType — (String)

                                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                  Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                              • Channel — (map)

                                The channel criteria for the segment.

                                • DimensionType — (String)

                                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                  Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                              • DeviceType — (map)

                                The device type criteria for the segment.

                                • DimensionType — (String)

                                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                  Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                              • Make — (map)

                                The device make criteria for the segment.

                                • DimensionType — (String)

                                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                  Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                              • Model — (map)

                                The device model criteria for the segment.

                                • DimensionType — (String)

                                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                  Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                              • Platform — (map)

                                The device platform criteria for the segment.

                                • DimensionType — (String)

                                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                  Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                            • Location — (map)

                              The location-based criteria, such as region or GPS coordinates, for the segment.

                              • Country — (map)

                                The country or region code, in ISO 3166-1 alpha-2 format, for the segment.

                                • DimensionType — (String)

                                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                  Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                              • GPSPoint — (map)

                                The GPS location and range for the segment.

                                • Coordinatesrequired — (map)

                                  The GPS coordinates to measure distance from.

                                  • Latituderequired — (Float)

                                    The latitude coordinate of the location.

                                  • Longituderequired — (Float)

                                    The longitude coordinate of the location.

                                • RangeInKilometers — (Float)

                                  The range, in kilometers, from the GPS coordinates.

                            • Metrics — (map<map>)

                              One or more custom metrics to use as criteria for the segment.

                              • ComparisonOperatorrequired — (String)

                                The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                              • Valuerequired — (Float)

                                The value to compare.

                            • UserAttributes — (map<map>)

                              One or more custom user attributes to use as criteria for the segment.

                              • AttributeType — (String)

                                The type of segment dimension to use. Valid values are:

                                • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                                • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                                • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                                • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                                • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                                • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                                • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                                • Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                  • "CONTAINS"
                                  • "BEFORE"
                                  • "AFTER"
                                  • "ON"
                                  • "BETWEEN"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                          • NextActivity — (String)

                            The unique identifier for the next activity to perform, after completing the activity for the path.

                        • DefaultActivity — (String)

                          The unique identifier for the activity to perform for participants who don't meet any of the conditions specified for other paths in the activity.

                        • EvaluationWaitTime — (map)

                          The amount of time to wait or the date and time when Amazon Pinpoint determines whether the conditions are met.

                          • WaitFor — (String)

                            The amount of time to wait, as a duration in ISO 8601 format, before determining whether the activity's conditions have been met or moving participants to the next activity in the journey.

                          • WaitUntil — (String)

                            The date and time, in ISO 8601 format, when Amazon Pinpoint determines whether the activity's conditions have been met or the activity moves participants to the next activity in the journey.

                      • PUSH — (map)

                        The settings for a push notification activity. This type of activity sends a push notification to participants.

                        • MessageConfig — (map)

                          Specifies the time to live (TTL) value for push notifications that are sent to participants in a journey.

                          • TimeToLive — (String)

                            The number of seconds that the push notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                            This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

                        • NextActivity — (String)

                          The unique identifier for the next activity to perform, after the message is sent.

                        • TemplateName — (String)

                          The name of the push notification template to use for the message. If specified, this value must match the name of an existing message template.

                        • TemplateVersion — (String)

                          The unique identifier for the version of the push notification template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                          If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

                      • RandomSplit — (map)

                        The settings for a random split activity. This type of activity randomly sends specified percentages of participants down one of as many as five paths in a journey, based on conditions that you specify.

                        • Branches — (Array<map>)

                          The paths for the activity, including the percentage of participants to enter each path and the activity to perform for each path.

                          • NextActivity — (String)

                            The unique identifier for the next activity to perform, after completing the activity for the path.

                          • Percentage — (Integer)

                            The percentage of participants to send down the activity path.

                            To determine which participants are sent down each path, Amazon Pinpoint applies a probability-based algorithm to the percentages that you specify for the paths. Therefore, the actual percentage of participants who are sent down a path may not be equal to the percentage that you specify.

                      • SMS — (map)

                        The settings for an SMS activity. This type of activity sends a text message to participants.

                        • MessageConfig — (map)

                          Specifies the sender ID and message type for an SMS message that's sent to participants in a journey.

                          • MessageType — (String)

                            The SMS message type. Valid values are TRANSACTIONAL (for messages that are critical or time-sensitive, such as a one-time passwords) and PROMOTIONAL (for messsages that aren't critical or time-sensitive, such as marketing messages).

                            Possible values include:
                            • "TRANSACTIONAL"
                            • "PROMOTIONAL"
                          • OriginationNumber — (String)

                            The long code to send the SMS message from. This value should be one of the dedicated long codes that's assigned to your AWS account. Although it isn't required, we recommend that you specify the long code using an E.164 format to ensure prompt and accurate delivery of the message. For example, +12065550100.

                          • SenderId — (String)

                            The sender ID to display as the sender of the message on a recipient's device. Support for sender IDs varies by country or region. For more information, see Supported Countries and Regions in the Amazon Pinpoint User Guide.

                          • EntityId — (String)

                            The entity ID or Principal Entity (PE) id received from the regulatory body for sending SMS in your country.

                          • TemplateId — (String)

                            The template ID received from the regulatory body for sending SMS in your country.

                        • NextActivity — (String)

                          The unique identifier for the next activity to perform, after the message is sent.

                        • TemplateName — (String)

                          The name of the SMS message template to use for the message. If specified, this value must match the name of an existing message template.

                        • TemplateVersion — (String)

                          The unique identifier for the version of the SMS template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                          If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

                      • Wait — (map)

                        The settings for a wait activity. This type of activity waits for a certain amount of time or until a specific date and time before moving participants to the next activity in a journey.

                        • NextActivity — (String)

                          The unique identifier for the next activity to perform, after performing the wait activity.

                        • WaitTime — (map)

                          The amount of time to wait or the date and time when the activity moves participants to the next activity in the journey.

                          • WaitFor — (String)

                            The amount of time to wait, as a duration in ISO 8601 format, before determining whether the activity's conditions have been met or moving participants to the next activity in the journey.

                          • WaitUntil — (String)

                            The date and time, in ISO 8601 format, when Amazon Pinpoint determines whether the activity's conditions have been met or the activity moves participants to the next activity in the journey.

                      • ContactCenter — (map)

                        The settings for a connect activity. This type of activity initiates a contact center call to participants.

                        • NextActivity — (String)

                          The unique identifier for the next activity to perform after the this activity.

                    • ApplicationIdrequired — (String)

                      The unique identifier for the application that the journey applies to.

                    • CreationDate — (String)

                      The date, in ISO 8601 format, when the journey was created.

                    • Idrequired — (String)

                      The unique identifier for the journey.

                    • LastModifiedDate — (String)

                      The date, in ISO 8601 format, when the journey was last modified.

                    • Limits — (map)

                      The messaging and entry limits for the journey.

                      • DailyCap — (Integer)

                        The maximum number of messages that the journey can send to a single participant during a 24-hour period. The maximum value is 100.

                      • EndpointReentryCap — (Integer)

                        The maximum number of times that a participant can enter the journey. The maximum value is 100. To allow participants to enter the journey an unlimited number of times, set this value to 0.

                      • MessagesPerSecond — (Integer)

                        The maximum number of messages that the journey can send each second.

                      • EndpointReentryInterval — (String)

                        Minimum time that must pass before an endpoint can re-enter a given journey. The duration should use an ISO 8601 format, such as PT1H.

                      • TimeframeCap — (map)

                        The number of messages that an endpoint can receive during the specified timeframe.

                        • Cap — (Integer)

                          The maximum number of messages that all journeys can send to an endpoint during the specified timeframe. The maximum value is 100. If set to 0, this limit will not apply.

                        • Days — (Integer)

                          The length of the timeframe in days. The maximum value is 30. If set to 0, this limit will not apply.

                      • TotalCap — (Integer)

                        The maximum number of messages a journey can sent to a single endpoint. The maximum value is 100. If set to 0, this limit will not apply.

                    • LocalTime — (Boolean)

                      Specifies whether the journey's scheduled start and end times use each participant's local time. If this value is true, the schedule uses each participant's local time.

                    • Namerequired — (String)

                      The name of the journey.

                    • QuietTime — (map)

                      The quiet time settings for the journey. Quiet time is a specific time range when a journey doesn't send messages to participants, if all the following conditions are met:

                      • The EndpointDemographic.Timezone property of the endpoint for the participant is set to a valid value.

                      • The current time in the participant's time zone is later than or equal to the time specified by the QuietTime.Start property for the journey.

                      • The current time in the participant's time zone is earlier than or equal to the time specified by the QuietTime.End property for the journey.

                      If any of the preceding conditions isn't met, the participant will receive messages from the journey, even if quiet time is enabled.

                      • End — (String)

                        The specific time when quiet time ends. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

                      • Start — (String)

                        The specific time when quiet time begins. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

                    • RefreshFrequency — (String)

                      The frequency with which Amazon Pinpoint evaluates segment and event data for the journey, as a duration in ISO 8601 format.

                    • Schedule — (map)

                      The schedule settings for the journey.

                      • EndTime — (Date)

                        The scheduled time, in ISO 8601 format, when the journey ended or will end.

                      • StartTime — (Date)

                        The scheduled time, in ISO 8601 format, when the journey began or will begin.

                      • Timezone — (String)

                        The starting UTC offset for the journey schedule, if the value of the journey's LocalTime property is true. Valid values are: UTC, UTC+01, UTC+02, UTC+03, UTC+03:30, UTC+04, UTC+04:30, UTC+05, UTC+05:30, UTC+05:45, UTC+06, UTC+06:30, UTC+07, UTC+08, UTC+08:45, UTC+09, UTC+09:30, UTC+10, UTC+10:30, UTC+11, UTC+12, UTC+12:45, UTC+13, UTC+13:45, UTC-02, UTC-02:30, UTC-03, UTC-03:30, UTC-04, UTC-05, UTC-06, UTC-07, UTC-08, UTC-09, UTC-09:30, UTC-10, and UTC-11.

                    • StartActivity — (String)

                      The unique identifier for the first activity in the journey.

                    • StartCondition — (map)

                      The segment that defines which users are participants in the journey.

                      • Description — (String)

                        The custom description of the condition.

                      • EventStartCondition — (map)

                        Specifies the settings for an event that causes a journey activity to start.

                        • EventFilter — (map)

                          Specifies the settings for an event that causes a campaign to be sent or a journey activity to be performed.

                          • Dimensionsrequired — (map)

                            The dimensions for the event filter to use for the campaign or the journey activity.

                            • Attributes — (map<map>)

                              One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                              • AttributeType — (String)

                                The type of segment dimension to use. Valid values are:

                                • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                                • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                                • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                                • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                                • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                                • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                                • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                                • Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                  • "CONTAINS"
                                  • "BEFORE"
                                  • "AFTER"
                                  • "ON"
                                  • "BETWEEN"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                              • EventType — (map)

                                The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                                • DimensionType — (String)

                                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                  Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                              • Metrics — (map<map>)

                                One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                                • ComparisonOperatorrequired — (String)

                                  The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                                • Valuerequired — (Float)

                                  The value to compare.

                            • FilterTyperequired — (String)

                              The type of event that causes the campaign to be sent or the journey activity to be performed. Valid values are: SYSTEM, sends the campaign or performs the activity when a system event occurs; and, ENDPOINT, sends the campaign or performs the activity when an endpoint event (Events resource) occurs.

                              Possible values include:
                              • "SYSTEM"
                              • "ENDPOINT"
                          • SegmentId — (String)
                        • SegmentStartCondition — (map)

                          The segment that's associated with the first activity in the journey. This segment determines which users are participants in the journey.

                          • SegmentIdrequired — (String)

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

                      • State — (String)

                        The current status of the journey. Possible values are:

                        • DRAFT - The journey is being developed and hasn't been published yet.

                        • ACTIVE - The journey has been developed and published. Depending on the journey's schedule, the journey may currently be running or scheduled to start running at a later time. If a journey's status is ACTIVE, you can't add, change, or remove activities from it.

                        • COMPLETED - The journey has been published and has finished running. All participants have entered the journey and no participants are waiting to complete the journey or any activities in the journey.

                        • CANCELLED - The journey has been stopped. If a journey's status is CANCELLED, you can't add, change, or remove activities or segment settings from the journey.

                        • CLOSED - The journey has been published and has started running. It may have also passed its scheduled end time, or passed its scheduled start time and a refresh frequency hasn't been specified for it. If a journey's status is CLOSED, you can't add participants to it, and no existing participants can enter the journey for the first time. However, any existing participants who are currently waiting to start an activity may continue the journey.

                        Possible values include:
                        • "DRAFT"
                        • "ACTIVE"
                        • "COMPLETED"
                        • "CANCELLED"
                        • "CLOSED"
                        • "PAUSED"
                      • tags — (map<String>)

                        This object is not used or supported.

                      • WaitForQuietTime — (Boolean)

                        Indicates whether endpoints in quiet hours should enter a wait activity until quiet hours have elapsed.

                      • RefreshOnSegmentUpdate — (Boolean)

                        Indicates whether the journey participants should be refreshed when a segment is updated.

                      • JourneyChannelSettings — (map)

                        The channel-specific configurations for the journey.

                        • ConnectCampaignArn — (String)

                          Amazon Resource Name (ARN) of the Connect Campaign.

                        • ConnectCampaignExecutionRoleArn — (String)

                          IAM role ARN to be assumed when invoking Connect campaign execution APIs for dialing.

                      • SendingSchedule — (Boolean)

                        Indicates if journey has Advance Quiet Time enabled. This flag should be set to true in order to allow using OpenHours and ClosedDays.

                      • OpenHours — (map)

                        The time when a journey can send messages. QuietTime should be configured first and SendingSchedule should be set to true.

                        • EMAIL — (map<Array<map>>)

                          Specifies the schedule settings for the email channel.

                          • StartTime — (String)

                            The start of the scheduled time, in ISO 8601 format, when the channel can send messages.

                          • EndTime — (String)

                            The end of the scheduled time, in ISO 8601 format, when the channel can't send messages.

                        • SMS — (map<Array<map>>)

                          Specifies the schedule settings for the SMS channel.

                          • StartTime — (String)

                            The start of the scheduled time, in ISO 8601 format, when the channel can send messages.

                          • EndTime — (String)

                            The end of the scheduled time, in ISO 8601 format, when the channel can't send messages.

                        • PUSH — (map<Array<map>>)

                          Specifies the schedule settings for the push channel.

                          • StartTime — (String)

                            The start of the scheduled time, in ISO 8601 format, when the channel can send messages.

                          • EndTime — (String)

                            The end of the scheduled time, in ISO 8601 format, when the channel can't send messages.

                        • VOICE — (map<Array<map>>)

                          Specifies the schedule settings for the voice channel.

                          • StartTime — (String)

                            The start of the scheduled time, in ISO 8601 format, when the channel can send messages.

                          • EndTime — (String)

                            The end of the scheduled time, in ISO 8601 format, when the channel can't send messages.

                        • CUSTOM — (map<Array<map>>)

                          Specifies the schedule settings for the custom channel.

                          • StartTime — (String)

                            The start of the scheduled time, in ISO 8601 format, when the channel can send messages.

                          • EndTime — (String)

                            The end of the scheduled time, in ISO 8601 format, when the channel can't send messages.

                      • ClosedDays — (map)

                        The time when a journey will not send messages. QuietTime should be configured first and SendingSchedule should be set to true.

                        • EMAIL — (Array<map>)

                          Rules for the Email channel.

                          • Name — (String)

                            The name of the closed day rule.

                          • StartDateTime — (String)

                            Start DateTime ISO 8601 format

                          • EndDateTime — (String)

                            End DateTime ISO 8601 format

                        • SMS — (Array<map>)

                          Rules for the SMS channel.

                          • Name — (String)

                            The name of the closed day rule.

                          • StartDateTime — (String)

                            Start DateTime ISO 8601 format

                          • EndDateTime — (String)

                            End DateTime ISO 8601 format

                        • PUSH — (Array<map>)

                          Rules for the Push channel.

                          • Name — (String)

                            The name of the closed day rule.

                          • StartDateTime — (String)

                            Start DateTime ISO 8601 format

                          • EndDateTime — (String)

                            End DateTime ISO 8601 format

                        • VOICE — (Array<map>)

                          Rules for the Voice channel.

                          • Name — (String)

                            The name of the closed day rule.

                          • StartDateTime — (String)

                            Start DateTime ISO 8601 format

                          • EndDateTime — (String)

                            End DateTime ISO 8601 format

                        • CUSTOM — (Array<map>)

                          Rules for the Custom channel.

                          • Name — (String)

                            The name of the closed day rule.

                          • StartDateTime — (String)

                            Start DateTime ISO 8601 format

                          • EndDateTime — (String)

                            End DateTime ISO 8601 format

                      • TimezoneEstimationMethods — (Array<String>)

                        An array of time zone estimation methods, if any, to use for determining an Endpoints time zone if the Endpoint does not have a value for the Demographic.Timezone attribute.

                        • PHONE_NUMBER - A time zone is determined based on the Endpoint.Address and Endpoint.Location.Country.

                        • POSTAL_CODE - A time zone is determined based on the Endpoint.Location.PostalCode and Endpoint.Location.Country.

                          Note: POSTAL_CODE detection is only supported in the United States, United Kingdom, Australia, New Zealand, Canada, France, Italy, Spain, Germany and in regions where Amazon Pinpoint is available.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

deletePushTemplate(params = {}, callback) ⇒ AWS.Request

Deletes a message template for messages that were sent through a push notification channel.

Service Reference:

Examples:

Calling the deletePushTemplate operation

var params = {
  TemplateName: 'STRING_VALUE', /* required */
  Version: 'STRING_VALUE'
};
pinpoint.deletePushTemplate(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • TemplateName — (String)

      The name of the message template. A template name must start with an alphanumeric character and can contain a maximum of 128 characters. The characters can be alphanumeric characters, underscores (_), or hyphens (-). Template names are case sensitive.

    • Version — (String)

      The unique identifier for the version of the message template to update, retrieve information about, or delete. To retrieve identifiers and other information for all the versions of a template, use the Template Versions resource.

      If specified, this value must match the identifier for an existing template version. If specified for an update operation, this value must match the identifier for the latest existing version of the template. This restriction helps ensure that race conditions don't occur.

      If you don't specify a value for this parameter, Amazon Pinpoint does the following:

      • For a get operation, retrieves information about the active version of the template.

      • For an update operation, saves the updates to (overwrites) the latest existing version of the template, if the create-new-version parameter isn't used or is set to false.

      • For a delete operation, deletes the template, including all versions of the template.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • MessageBody — (map)

        Provides information about an API request or response.

        • Message — (String)

          The message that's returned from the API.

        • RequestID — (String)

          The unique identifier for the request or response.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

deleteRecommenderConfiguration(params = {}, callback) ⇒ AWS.Request

Deletes an Amazon Pinpoint configuration for a recommender model.

Service Reference:

Examples:

Calling the deleteRecommenderConfiguration operation

var params = {
  RecommenderId: 'STRING_VALUE' /* required */
};
pinpoint.deleteRecommenderConfiguration(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • RecommenderId — (String)

      The unique identifier for the recommender model configuration. This identifier is displayed as the Recommender ID on the Amazon Pinpoint console.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • RecommenderConfigurationResponse — (map)

        Provides information about Amazon Pinpoint configuration settings for retrieving and processing data from a recommender model.

        • Attributes — (map<String>)

          A map that defines 1-10 custom endpoint or user attributes, depending on the value for the RecommendationProviderIdType property. Each of these attributes temporarily stores a recommended item that's retrieved from the recommender model and sent to an AWS Lambda function for additional processing. Each attribute can be used as a message variable in a message template.

          This value is null if the configuration doesn't invoke an AWS Lambda function (RecommendationTransformerUri) to perform additional processing of recommendation data.

        • CreationDaterequired — (String)

          The date, in extended ISO 8601 format, when the configuration was created for the recommender model.

        • Description — (String)

          The custom description of the configuration for the recommender model.

        • Idrequired — (String)

          The unique identifier for the recommender model configuration.

        • LastModifiedDaterequired — (String)

          The date, in extended ISO 8601 format, when the configuration for the recommender model was last modified.

        • Name — (String)

          The custom name of the configuration for the recommender model.

        • RecommendationProviderIdType — (String)

          The type of Amazon Pinpoint ID that's associated with unique user IDs in the recommender model. This value enables the model to use attribute and event data that’s specific to a particular endpoint or user in an Amazon Pinpoint application. Possible values are:

          • PINPOINT_ENDPOINT_ID - Each user in the model is associated with a particular endpoint in Amazon Pinpoint. The data is correlated based on endpoint IDs in Amazon Pinpoint. This is the default value.

          • PINPOINT_USER_ID - Each user in the model is associated with a particular user and endpoint in Amazon Pinpoint. The data is correlated based on user IDs in Amazon Pinpoint. If this value is specified, an endpoint definition in Amazon Pinpoint has to specify both a user ID (UserId) and an endpoint ID. Otherwise, messages won’t be sent to the user's endpoint.

        • RecommendationProviderRoleArnrequired — (String)

          The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that authorizes Amazon Pinpoint to retrieve recommendation data from the recommender model.

        • RecommendationProviderUrirequired — (String)

          The Amazon Resource Name (ARN) of the recommender model that Amazon Pinpoint retrieves the recommendation data from. This value is the ARN of an Amazon Personalize campaign.

        • RecommendationTransformerUri — (String)

          The name or Amazon Resource Name (ARN) of the AWS Lambda function that Amazon Pinpoint invokes to perform additional processing of recommendation data that it retrieves from the recommender model.

        • RecommendationsDisplayName — (String)

          The custom display name for the standard endpoint or user attribute (RecommendationItems) that temporarily stores recommended items for each endpoint or user, depending on the value for the RecommendationProviderIdType property. This name appears in the Attribute finder of the template editor on the Amazon Pinpoint console.

          This value is null if the configuration doesn't invoke an AWS Lambda function (RecommendationTransformerUri) to perform additional processing of recommendation data.

        • RecommendationsPerMessage — (Integer)

          The number of recommended items that are retrieved from the model for each endpoint or user, depending on the value for the RecommendationProviderIdType property. This number determines how many recommended items are available for use in message variables.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

deleteSegment(params = {}, callback) ⇒ AWS.Request

Deletes a segment from an application.

Service Reference:

Examples:

Calling the deleteSegment operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  SegmentId: 'STRING_VALUE' /* required */
};
pinpoint.deleteSegment(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • SegmentId — (String)

      The unique identifier for the segment.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • SegmentResponse — (map)

        Provides information about the configuration, dimension, and other settings for a segment.

        • ApplicationIdrequired — (String)

          The unique identifier for the application that the segment is associated with.

        • Arnrequired — (String)

          The Amazon Resource Name (ARN) of the segment.

        • CreationDaterequired — (String)

          The date and time when the segment was created.

        • Dimensions — (map)

          The dimension settings for the segment.

          • Attributes — (map<map>)

            One or more custom attributes to use as criteria for the segment.

            • AttributeType — (String)

              The type of segment dimension to use. Valid values are:

              • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
              • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
              • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
              • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
              • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
              • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
              • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
              • Possible values include:
                • "INCLUSIVE"
                • "EXCLUSIVE"
                • "CONTAINS"
                • "BEFORE"
                • "AFTER"
                • "ON"
                • "BETWEEN"
              • Valuesrequired — (Array<String>)

                The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

            • Behavior — (map)

              The behavior-based criteria, such as how recently users have used your app, for the segment.

              • Recency — (map)

                The dimension settings that are based on how recently an endpoint was active.

                • Durationrequired — (String)

                  The duration to use when determining whether an endpoint is active or inactive.

                  Possible values include:
                  • "HR_24"
                  • "DAY_7"
                  • "DAY_14"
                  • "DAY_30"
                • RecencyTyperequired — (String)

                  The type of recency dimension to use for the segment. Valid values are: ACTIVE, endpoints that were active within the specified duration are included in the segment; and, INACTIVE, endpoints that weren't active within the specified duration are included in the segment.

                  Possible values include:
                  • "ACTIVE"
                  • "INACTIVE"
            • Demographic — (map)

              The demographic-based criteria, such as device platform, for the segment.

              • AppVersion — (map)

                The app version criteria for the segment.

                • DimensionType — (String)

                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                  Possible values include:
                  • "INCLUSIVE"
                  • "EXCLUSIVE"
                • Valuesrequired — (Array<String>)

                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

              • Channel — (map)

                The channel criteria for the segment.

                • DimensionType — (String)

                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                  Possible values include:
                  • "INCLUSIVE"
                  • "EXCLUSIVE"
                • Valuesrequired — (Array<String>)

                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

              • DeviceType — (map)

                The device type criteria for the segment.

                • DimensionType — (String)

                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                  Possible values include:
                  • "INCLUSIVE"
                  • "EXCLUSIVE"
                • Valuesrequired — (Array<String>)

                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

              • Make — (map)

                The device make criteria for the segment.

                • DimensionType — (String)

                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                  Possible values include:
                  • "INCLUSIVE"
                  • "EXCLUSIVE"
                • Valuesrequired — (Array<String>)

                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

              • Model — (map)

                The device model criteria for the segment.

                • DimensionType — (String)

                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                  Possible values include:
                  • "INCLUSIVE"
                  • "EXCLUSIVE"
                • Valuesrequired — (Array<String>)

                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

              • Platform — (map)

                The device platform criteria for the segment.

                • DimensionType — (String)

                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                  Possible values include:
                  • "INCLUSIVE"
                  • "EXCLUSIVE"
                • Valuesrequired — (Array<String>)

                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

            • Location — (map)

              The location-based criteria, such as region or GPS coordinates, for the segment.

              • Country — (map)

                The country or region code, in ISO 3166-1 alpha-2 format, for the segment.

                • DimensionType — (String)

                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                  Possible values include:
                  • "INCLUSIVE"
                  • "EXCLUSIVE"
                • Valuesrequired — (Array<String>)

                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

              • GPSPoint — (map)

                The GPS location and range for the segment.

                • Coordinatesrequired — (map)

                  The GPS coordinates to measure distance from.

                  • Latituderequired — (Float)

                    The latitude coordinate of the location.

                  • Longituderequired — (Float)

                    The longitude coordinate of the location.

                • RangeInKilometers — (Float)

                  The range, in kilometers, from the GPS coordinates.

            • Metrics — (map<map>)

              One or more custom metrics to use as criteria for the segment.

              • ComparisonOperatorrequired — (String)

                The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

              • Valuerequired — (Float)

                The value to compare.

            • UserAttributes — (map<map>)

              One or more custom user attributes to use as criteria for the segment.

              • AttributeType — (String)

                The type of segment dimension to use. Valid values are:

                • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                • Possible values include:
                  • "INCLUSIVE"
                  • "EXCLUSIVE"
                  • "CONTAINS"
                  • "BEFORE"
                  • "AFTER"
                  • "ON"
                  • "BETWEEN"
                • Valuesrequired — (Array<String>)

                  The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

            • Idrequired — (String)

              The unique identifier for the segment.

            • ImportDefinition — (map)

              The settings for the import job that's associated with the segment.

              • ChannelCounts — (map<Integer>)

                The number of channel types in the endpoint definitions that were imported to create the segment.

              • ExternalIdrequired — (String)

                (Deprecated) Your AWS account ID, which you assigned to an external ID key in an IAM trust policy. Amazon Pinpoint previously used this value to assume an IAM role when importing endpoint definitions, but we removed this requirement. We don't recommend use of external IDs for IAM roles that are assumed by Amazon Pinpoint.

              • Formatrequired — (String)

                The format of the files that were imported to create the segment. Valid values are: CSV, for comma-separated values format; and, JSON, for newline-delimited JSON format.

                Possible values include:
                • "CSV"
                • "JSON"
              • RoleArnrequired — (String)

                The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that authorized Amazon Pinpoint to access the Amazon S3 location to import endpoint definitions from.

              • S3Urlrequired — (String)

                The URL of the Amazon Simple Storage Service (Amazon S3) bucket that the endpoint definitions were imported from to create the segment.

              • Sizerequired — (Integer)

                The number of endpoint definitions that were imported successfully to create the segment.

            • LastModifiedDate — (String)

              The date and time when the segment was last modified.

            • Name — (String)

              The name of the segment.

            • SegmentGroups — (map)

              A list of one or more segment groups that apply to the segment. Each segment group consists of zero or more base segments and the dimensions that are applied to those base segments.

              • Groups — (Array<map>)

                An array that defines the set of segment criteria to evaluate when handling segment groups for the segment.

                • Dimensions — (Array<map>)

                  An array that defines the dimensions for the segment.

                  • Attributes — (map<map>)

                    One or more custom attributes to use as criteria for the segment.

                    • AttributeType — (String)

                      The type of segment dimension to use. Valid values are:

                      • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                      • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                      • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                      • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                      • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                      • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                      • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                      • Possible values include:
                        • "INCLUSIVE"
                        • "EXCLUSIVE"
                        • "CONTAINS"
                        • "BEFORE"
                        • "AFTER"
                        • "ON"
                        • "BETWEEN"
                      • Valuesrequired — (Array<String>)

                        The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                    • Behavior — (map)

                      The behavior-based criteria, such as how recently users have used your app, for the segment.

                      • Recency — (map)

                        The dimension settings that are based on how recently an endpoint was active.

                        • Durationrequired — (String)

                          The duration to use when determining whether an endpoint is active or inactive.

                          Possible values include:
                          • "HR_24"
                          • "DAY_7"
                          • "DAY_14"
                          • "DAY_30"
                        • RecencyTyperequired — (String)

                          The type of recency dimension to use for the segment. Valid values are: ACTIVE, endpoints that were active within the specified duration are included in the segment; and, INACTIVE, endpoints that weren't active within the specified duration are included in the segment.

                          Possible values include:
                          • "ACTIVE"
                          • "INACTIVE"
                    • Demographic — (map)

                      The demographic-based criteria, such as device platform, for the segment.

                      • AppVersion — (map)

                        The app version criteria for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • Channel — (map)

                        The channel criteria for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • DeviceType — (map)

                        The device type criteria for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • Make — (map)

                        The device make criteria for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • Model — (map)

                        The device model criteria for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • Platform — (map)

                        The device platform criteria for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                    • Location — (map)

                      The location-based criteria, such as region or GPS coordinates, for the segment.

                      • Country — (map)

                        The country or region code, in ISO 3166-1 alpha-2 format, for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • GPSPoint — (map)

                        The GPS location and range for the segment.

                        • Coordinatesrequired — (map)

                          The GPS coordinates to measure distance from.

                          • Latituderequired — (Float)

                            The latitude coordinate of the location.

                          • Longituderequired — (Float)

                            The longitude coordinate of the location.

                        • RangeInKilometers — (Float)

                          The range, in kilometers, from the GPS coordinates.

                    • Metrics — (map<map>)

                      One or more custom metrics to use as criteria for the segment.

                      • ComparisonOperatorrequired — (String)

                        The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                      • Valuerequired — (Float)

                        The value to compare.

                    • UserAttributes — (map<map>)

                      One or more custom user attributes to use as criteria for the segment.

                      • AttributeType — (String)

                        The type of segment dimension to use. Valid values are:

                        • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                        • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                        • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                        • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                        • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                        • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                        • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                        • Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                          • "CONTAINS"
                          • "BEFORE"
                          • "AFTER"
                          • "ON"
                          • "BETWEEN"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                    • SourceSegments — (Array<map>)

                      The base segment to build the segment on. A base segment, also referred to as a source segment, defines the initial population of endpoints for a segment. When you add dimensions to a segment, Amazon Pinpoint filters the base segment by using the dimensions that you specify.

                      You can specify more than one dimensional segment or only one imported segment. If you specify an imported segment, the Amazon Pinpoint console displays a segment size estimate that indicates the size of the imported segment without any filters applied to it.

                      • Idrequired — (String)

                        The unique identifier for the segment.

                      • Version — (Integer)

                        The version number of the segment.

                    • SourceType — (String)

                      Specifies how to handle multiple base segments for the segment. For example, if you specify three base segments for the segment, whether the resulting segment is based on all, any, or none of the base segments.

                      Possible values include:
                      • "ALL"
                      • "ANY"
                      • "NONE"
                    • Type — (String)

                      Specifies how to handle multiple dimensions for the segment. For example, if you specify three dimensions for the segment, whether the resulting segment includes endpoints that match all, any, or none of the dimensions.

                      Possible values include:
                      • "ALL"
                      • "ANY"
                      • "NONE"
                  • Include — (String)

                    Specifies how to handle multiple segment groups for the segment. For example, if the segment includes three segment groups, whether the resulting segment includes endpoints that match all, any, or none of the segment groups.

                    Possible values include:
                    • "ALL"
                    • "ANY"
                    • "NONE"
                • SegmentTyperequired — (String)

                  The segment type. Valid values are:

                  • DIMENSIONAL - A dynamic segment, which is a segment that uses selection criteria that you specify and is based on endpoint data that's reported by your app. Dynamic segments can change over time.

                  • IMPORT - A static segment, which is a segment that uses selection criteria that you specify and is based on endpoint definitions that you import from a file. Imported segments are static; they don't change over time.

                  Possible values include:
                  • "DIMENSIONAL"
                  • "IMPORT"
                • tags — (map<String>)

                  A string-to-string map of key-value pairs that identifies the tags that are associated with the segment. Each tag consists of a required tag key and an associated tag value.

                • Version — (Integer)

                  The version number of the segment.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

deleteSmsChannel(params = {}, callback) ⇒ AWS.Request

Disables the SMS channel for an application and deletes any existing settings for the channel.

Service Reference:

Examples:

Calling the deleteSmsChannel operation

var params = {
  ApplicationId: 'STRING_VALUE' /* required */
};
pinpoint.deleteSmsChannel(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • SMSChannelResponse — (map)

        Provides information about the status and settings of the SMS channel for an application.

        • ApplicationId — (String)

          The unique identifier for the application that the SMS channel applies to.

        • CreationDate — (String)

          The date and time, in ISO 8601 format, when the SMS channel was enabled.

        • Enabled — (Boolean)

          Specifies whether the SMS channel is enabled for the application.

        • HasCredential — (Boolean)

          (Not used) This property is retained only for backward compatibility.

        • Id — (String)

          (Deprecated) An identifier for the SMS channel. This property is retained only for backward compatibility.

        • IsArchived — (Boolean)

          Specifies whether the SMS channel is archived.

        • LastModifiedBy — (String)

          The user who last modified the SMS channel.

        • LastModifiedDate — (String)

          The date and time, in ISO 8601 format, when the SMS channel was last modified.

        • Platformrequired — (String)

          The type of messaging or notification platform for the channel. For the SMS channel, this value is SMS.

        • PromotionalMessagesPerSecond — (Integer)

          The maximum number of promotional messages that you can send through the SMS channel each second.

        • SenderId — (String)

          The identity that displays on recipients' devices when they receive messages from the SMS channel.

        • ShortCode — (String)

          The registered short code to use when you send messages through the SMS channel.

        • TransactionalMessagesPerSecond — (Integer)

          The maximum number of transactional messages that you can send through the SMS channel each second.

        • Version — (Integer)

          The current version of the SMS channel.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

deleteSmsTemplate(params = {}, callback) ⇒ AWS.Request

Deletes a message template for messages that were sent through the SMS channel.

Service Reference:

Examples:

Calling the deleteSmsTemplate operation

var params = {
  TemplateName: 'STRING_VALUE', /* required */
  Version: 'STRING_VALUE'
};
pinpoint.deleteSmsTemplate(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • TemplateName — (String)

      The name of the message template. A template name must start with an alphanumeric character and can contain a maximum of 128 characters. The characters can be alphanumeric characters, underscores (_), or hyphens (-). Template names are case sensitive.

    • Version — (String)

      The unique identifier for the version of the message template to update, retrieve information about, or delete. To retrieve identifiers and other information for all the versions of a template, use the Template Versions resource.

      If specified, this value must match the identifier for an existing template version. If specified for an update operation, this value must match the identifier for the latest existing version of the template. This restriction helps ensure that race conditions don't occur.

      If you don't specify a value for this parameter, Amazon Pinpoint does the following:

      • For a get operation, retrieves information about the active version of the template.

      • For an update operation, saves the updates to (overwrites) the latest existing version of the template, if the create-new-version parameter isn't used or is set to false.

      • For a delete operation, deletes the template, including all versions of the template.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • MessageBody — (map)

        Provides information about an API request or response.

        • Message — (String)

          The message that's returned from the API.

        • RequestID — (String)

          The unique identifier for the request or response.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

deleteUserEndpoints(params = {}, callback) ⇒ AWS.Request

Deletes all the endpoints that are associated with a specific user ID.

Service Reference:

Examples:

Calling the deleteUserEndpoints operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  UserId: 'STRING_VALUE' /* required */
};
pinpoint.deleteUserEndpoints(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • UserId — (String)

      The unique identifier for the user.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • EndpointsResponse — (map)

        Provides information about all the endpoints that are associated with a user ID.

        • Itemrequired — (Array<map>)

          An array of responses, one for each endpoint that's associated with the user ID.

          • Address — (String)

            The destination address for messages or push notifications that you send to the endpoint. The address varies by channel. For example, the address for a push-notification channel is typically the token provided by a push notification service, such as an Apple Push Notification service (APNs) device token or a Firebase Cloud Messaging (FCM) registration token. The address for the SMS channel is a phone number in E.164 format, such as +12065550100. The address for the email channel is an email address.

          • ApplicationId — (String)

            The unique identifier for the application that's associated with the endpoint.

          • Attributes — (map<Array<String>>)

            One or more custom attributes that describe the endpoint by associating a name with an array of values. For example, the value of a custom attribute named Interests might be: ["Science", "Music", "Travel"]. You can use these attributes as filter criteria when you create segments.

          • ChannelType — (String)

            The channel that's used when sending messages or push notifications to the endpoint.

            Possible values include:
            • "PUSH"
            • "GCM"
            • "APNS"
            • "APNS_SANDBOX"
            • "APNS_VOIP"
            • "APNS_VOIP_SANDBOX"
            • "ADM"
            • "SMS"
            • "VOICE"
            • "EMAIL"
            • "BAIDU"
            • "CUSTOM"
            • "IN_APP"
          • CohortId — (String)

            A number from 0-99 that represents the cohort that the endpoint is assigned to. Endpoints are grouped into cohorts randomly, and each cohort contains approximately 1 percent of the endpoints for an application. Amazon Pinpoint assigns cohorts to the holdout or treatment allocations for campaigns.

          • CreationDate — (String)

            The date and time, in ISO 8601 format, when the endpoint was created.

          • Demographic — (map)

            The demographic information for the endpoint, such as the time zone and platform.

            • AppVersion — (String)

              The version of the app that's associated with the endpoint.

            • Locale — (String)

              The locale of the endpoint, in the following format: the ISO 639-1 alpha-2 code, followed by an underscore (_), followed by an ISO 3166-1 alpha-2 value.

            • Make — (String)

              The manufacturer of the endpoint device, such as apple or samsung.

            • Model — (String)

              The model name or number of the endpoint device, such as iPhone or SM-G900F.

            • ModelVersion — (String)

              The model version of the endpoint device.

            • Platform — (String)

              The platform of the endpoint device, such as ios.

            • PlatformVersion — (String)

              The platform version of the endpoint device.

            • Timezone — (String)

              The time zone of the endpoint, specified as a tz database name value, such as America/Los_Angeles.

          • EffectiveDate — (String)

            The date and time, in ISO 8601 format, when the endpoint was last updated.

          • EndpointStatus — (String)

            Specifies whether messages or push notifications are sent to the endpoint. Possible values are: ACTIVE, messages are sent to the endpoint; and, INACTIVE, messages aren’t sent to the endpoint.

            Amazon Pinpoint automatically sets this value to ACTIVE when you create an endpoint or update an existing endpoint. Amazon Pinpoint automatically sets this value to INACTIVE if you update another endpoint that has the same address specified by the Address property.

          • Id — (String)

            The unique identifier that you assigned to the endpoint. The identifier should be a globally unique identifier (GUID) to ensure that it doesn't conflict with other endpoint identifiers that are associated with the application.

          • Location — (map)

            The geographic information for the endpoint.

            • City — (String)

              The name of the city where the endpoint is located.

            • Country — (String)

              The two-character code, in ISO 3166-1 alpha-2 format, for the country or region where the endpoint is located. For example, US for the United States.

            • Latitude — (Float)

              The latitude coordinate of the endpoint location, rounded to one decimal place.

            • Longitude — (Float)

              The longitude coordinate of the endpoint location, rounded to one decimal place.

            • PostalCode — (String)

              The postal or ZIP code for the area where the endpoint is located.

            • Region — (String)

              The name of the region where the endpoint is located. For locations in the United States, this value is the name of a state.

          • Metrics — (map<Float>)

            One or more custom metrics that your app reports to Amazon Pinpoint for the endpoint.

          • OptOut — (String)

            Specifies whether the user who's associated with the endpoint has opted out of receiving messages and push notifications from you. Possible values are: ALL, the user has opted out and doesn't want to receive any messages or push notifications; and, NONE, the user hasn't opted out and wants to receive all messages and push notifications.

          • RequestId — (String)

            The unique identifier for the most recent request to update the endpoint.

          • User — (map)

            One or more custom user attributes that your app reports to Amazon Pinpoint for the user who's associated with the endpoint.

            • UserAttributes — (map<Array<String>>)

              One or more custom attributes that describe the user by associating a name with an array of values. For example, the value of an attribute named Interests might be: ["Science", "Music", "Travel"]. You can use these attributes as filter criteria when you create segments. Attribute names are case sensitive.

              An attribute name can contain up to 50 characters. An attribute value can contain up to 100 characters. When you define the name of a custom attribute, avoid using the following characters: number sign (#), colon (:), question mark (?), backslash (), and slash (/). The Amazon Pinpoint console can't display attribute names that contain these characters. This restriction doesn't apply to attribute values.

            • UserId — (String)

              The unique identifier for the user.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

deleteVoiceChannel(params = {}, callback) ⇒ AWS.Request

Disables the voice channel for an application and deletes any existing settings for the channel.

Service Reference:

Examples:

Calling the deleteVoiceChannel operation

var params = {
  ApplicationId: 'STRING_VALUE' /* required */
};
pinpoint.deleteVoiceChannel(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • VoiceChannelResponse — (map)

        Provides information about the status and settings of the voice channel for an application.

        • ApplicationId — (String)

          The unique identifier for the application that the voice channel applies to.

        • CreationDate — (String)

          The date and time, in ISO 8601 format, when the voice channel was enabled.

        • Enabled — (Boolean)

          Specifies whether the voice channel is enabled for the application.

        • HasCredential — (Boolean)

          (Not used) This property is retained only for backward compatibility.

        • Id — (String)

          (Deprecated) An identifier for the voice channel. This property is retained only for backward compatibility.

        • IsArchived — (Boolean)

          Specifies whether the voice channel is archived.

        • LastModifiedBy — (String)

          The user who last modified the voice channel.

        • LastModifiedDate — (String)

          The date and time, in ISO 8601 format, when the voice channel was last modified.

        • Platformrequired — (String)

          The type of messaging or notification platform for the channel. For the voice channel, this value is VOICE.

        • Version — (Integer)

          The current version of the voice channel.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

deleteVoiceTemplate(params = {}, callback) ⇒ AWS.Request

Deletes a message template for messages that were sent through the voice channel.

Service Reference:

Examples:

Calling the deleteVoiceTemplate operation

var params = {
  TemplateName: 'STRING_VALUE', /* required */
  Version: 'STRING_VALUE'
};
pinpoint.deleteVoiceTemplate(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • TemplateName — (String)

      The name of the message template. A template name must start with an alphanumeric character and can contain a maximum of 128 characters. The characters can be alphanumeric characters, underscores (_), or hyphens (-). Template names are case sensitive.

    • Version — (String)

      The unique identifier for the version of the message template to update, retrieve information about, or delete. To retrieve identifiers and other information for all the versions of a template, use the Template Versions resource.

      If specified, this value must match the identifier for an existing template version. If specified for an update operation, this value must match the identifier for the latest existing version of the template. This restriction helps ensure that race conditions don't occur.

      If you don't specify a value for this parameter, Amazon Pinpoint does the following:

      • For a get operation, retrieves information about the active version of the template.

      • For an update operation, saves the updates to (overwrites) the latest existing version of the template, if the create-new-version parameter isn't used or is set to false.

      • For a delete operation, deletes the template, including all versions of the template.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • MessageBody — (map)

        Provides information about an API request or response.

        • Message — (String)

          The message that's returned from the API.

        • RequestID — (String)

          The unique identifier for the request or response.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getAdmChannel(params = {}, callback) ⇒ AWS.Request

Retrieves information about the status and settings of the ADM channel for an application.

Service Reference:

Examples:

Calling the getAdmChannel operation

var params = {
  ApplicationId: 'STRING_VALUE' /* required */
};
pinpoint.getAdmChannel(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • ADMChannelResponse — (map)

        Provides information about the status and settings of the ADM (Amazon Device Messaging) channel for an application.

        • ApplicationId — (String)

          The unique identifier for the application that the ADM channel applies to.

        • CreationDate — (String)

          The date and time when the ADM channel was enabled.

        • Enabled — (Boolean)

          Specifies whether the ADM channel is enabled for the application.

        • HasCredential — (Boolean)

          (Not used) This property is retained only for backward compatibility.

        • Id — (String)

          (Deprecated) An identifier for the ADM channel. This property is retained only for backward compatibility.

        • IsArchived — (Boolean)

          Specifies whether the ADM channel is archived.

        • LastModifiedBy — (String)

          The user who last modified the ADM channel.

        • LastModifiedDate — (String)

          The date and time when the ADM channel was last modified.

        • Platformrequired — (String)

          The type of messaging or notification platform for the channel. For the ADM channel, this value is ADM.

        • Version — (Integer)

          The current version of the ADM channel.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getApnsChannel(params = {}, callback) ⇒ AWS.Request

Retrieves information about the status and settings of the APNs channel for an application.

Service Reference:

Examples:

Calling the getApnsChannel operation

var params = {
  ApplicationId: 'STRING_VALUE' /* required */
};
pinpoint.getApnsChannel(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • APNSChannelResponse — (map)

        Provides information about the status and settings of the APNs (Apple Push Notification service) channel for an application.

        • ApplicationId — (String)

          The unique identifier for the application that the APNs channel applies to.

        • CreationDate — (String)

          The date and time when the APNs channel was enabled.

        • DefaultAuthenticationMethod — (String)

          The default authentication method that Amazon Pinpoint uses to authenticate with APNs for this channel, key or certificate.

        • Enabled — (Boolean)

          Specifies whether the APNs channel is enabled for the application.

        • HasCredential — (Boolean)

          (Not used) This property is retained only for backward compatibility.

        • HasTokenKey — (Boolean)

          Specifies whether the APNs channel is configured to communicate with APNs by using APNs tokens. To provide an authentication key for APNs tokens, set the TokenKey property of the channel.

        • Id — (String)

          (Deprecated) An identifier for the APNs channel. This property is retained only for backward compatibility.

        • IsArchived — (Boolean)

          Specifies whether the APNs channel is archived.

        • LastModifiedBy — (String)

          The user who last modified the APNs channel.

        • LastModifiedDate — (String)

          The date and time when the APNs channel was last modified.

        • Platformrequired — (String)

          The type of messaging or notification platform for the channel. For the APNs channel, this value is APNS.

        • Version — (Integer)

          The current version of the APNs channel.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getApnsSandboxChannel(params = {}, callback) ⇒ AWS.Request

Retrieves information about the status and settings of the APNs sandbox channel for an application.

Service Reference:

Examples:

Calling the getApnsSandboxChannel operation

var params = {
  ApplicationId: 'STRING_VALUE' /* required */
};
pinpoint.getApnsSandboxChannel(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • APNSSandboxChannelResponse — (map)

        Provides information about the status and settings of the APNs (Apple Push Notification service) sandbox channel for an application.

        • ApplicationId — (String)

          The unique identifier for the application that the APNs sandbox channel applies to.

        • CreationDate — (String)

          The date and time when the APNs sandbox channel was enabled.

        • DefaultAuthenticationMethod — (String)

          The default authentication method that Amazon Pinpoint uses to authenticate with the APNs sandbox environment for this channel, key or certificate.

        • Enabled — (Boolean)

          Specifies whether the APNs sandbox channel is enabled for the application.

        • HasCredential — (Boolean)

          (Not used) This property is retained only for backward compatibility.

        • HasTokenKey — (Boolean)

          Specifies whether the APNs sandbox channel is configured to communicate with APNs by using APNs tokens. To provide an authentication key for APNs tokens, set the TokenKey property of the channel.

        • Id — (String)

          (Deprecated) An identifier for the APNs sandbox channel. This property is retained only for backward compatibility.

        • IsArchived — (Boolean)

          Specifies whether the APNs sandbox channel is archived.

        • LastModifiedBy — (String)

          The user who last modified the APNs sandbox channel.

        • LastModifiedDate — (String)

          The date and time when the APNs sandbox channel was last modified.

        • Platformrequired — (String)

          The type of messaging or notification platform for the channel. For the APNs sandbox channel, this value is APNS_SANDBOX.

        • Version — (Integer)

          The current version of the APNs sandbox channel.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getApnsVoipChannel(params = {}, callback) ⇒ AWS.Request

Retrieves information about the status and settings of the APNs VoIP channel for an application.

Service Reference:

Examples:

Calling the getApnsVoipChannel operation

var params = {
  ApplicationId: 'STRING_VALUE' /* required */
};
pinpoint.getApnsVoipChannel(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • APNSVoipChannelResponse — (map)

        Provides information about the status and settings of the APNs (Apple Push Notification service) VoIP channel for an application.

        • ApplicationId — (String)

          The unique identifier for the application that the APNs VoIP channel applies to.

        • CreationDate — (String)

          The date and time when the APNs VoIP channel was enabled.

        • DefaultAuthenticationMethod — (String)

          The default authentication method that Amazon Pinpoint uses to authenticate with APNs for this channel, key or certificate.

        • Enabled — (Boolean)

          Specifies whether the APNs VoIP channel is enabled for the application.

        • HasCredential — (Boolean)

          (Not used) This property is retained only for backward compatibility.

        • HasTokenKey — (Boolean)

          Specifies whether the APNs VoIP channel is configured to communicate with APNs by using APNs tokens. To provide an authentication key for APNs tokens, set the TokenKey property of the channel.

        • Id — (String)

          (Deprecated) An identifier for the APNs VoIP channel. This property is retained only for backward compatibility.

        • IsArchived — (Boolean)

          Specifies whether the APNs VoIP channel is archived.

        • LastModifiedBy — (String)

          The user who last modified the APNs VoIP channel.

        • LastModifiedDate — (String)

          The date and time when the APNs VoIP channel was last modified.

        • Platformrequired — (String)

          The type of messaging or notification platform for the channel. For the APNs VoIP channel, this value is APNS_VOIP.

        • Version — (Integer)

          The current version of the APNs VoIP channel.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getApnsVoipSandboxChannel(params = {}, callback) ⇒ AWS.Request

Retrieves information about the status and settings of the APNs VoIP sandbox channel for an application.

Service Reference:

Examples:

Calling the getApnsVoipSandboxChannel operation

var params = {
  ApplicationId: 'STRING_VALUE' /* required */
};
pinpoint.getApnsVoipSandboxChannel(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • APNSVoipSandboxChannelResponse — (map)

        Provides information about the status and settings of the APNs (Apple Push Notification service) VoIP sandbox channel for an application.

        • ApplicationId — (String)

          The unique identifier for the application that the APNs VoIP sandbox channel applies to.

        • CreationDate — (String)

          The date and time when the APNs VoIP sandbox channel was enabled.

        • DefaultAuthenticationMethod — (String)

          The default authentication method that Amazon Pinpoint uses to authenticate with the APNs sandbox environment for this channel, key or certificate.

        • Enabled — (Boolean)

          Specifies whether the APNs VoIP sandbox channel is enabled for the application.

        • HasCredential — (Boolean)

          (Not used) This property is retained only for backward compatibility.

        • HasTokenKey — (Boolean)

          Specifies whether the APNs VoIP sandbox channel is configured to communicate with APNs by using APNs tokens. To provide an authentication key for APNs tokens, set the TokenKey property of the channel.

        • Id — (String)

          (Deprecated) An identifier for the APNs VoIP sandbox channel. This property is retained only for backward compatibility.

        • IsArchived — (Boolean)

          Specifies whether the APNs VoIP sandbox channel is archived.

        • LastModifiedBy — (String)

          The user who last modified the APNs VoIP sandbox channel.

        • LastModifiedDate — (String)

          The date and time when the APNs VoIP sandbox channel was last modified.

        • Platformrequired — (String)

          The type of messaging or notification platform for the channel. For the APNs VoIP sandbox channel, this value is APNS_VOIP_SANDBOX.

        • Version — (Integer)

          The current version of the APNs VoIP sandbox channel.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getApp(params = {}, callback) ⇒ AWS.Request

Retrieves information about an application.

Service Reference:

Examples:

Calling the getApp operation

var params = {
  ApplicationId: 'STRING_VALUE' /* required */
};
pinpoint.getApp(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • ApplicationResponse — (map)

        Provides information about an application.

        • Arnrequired — (String)

          The Amazon Resource Name (ARN) of the application.

        • Idrequired — (String)

          The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

        • Namerequired — (String)

          The display name of the application. This name is displayed as the Project name on the Amazon Pinpoint console.

        • tags — (map<String>)

          A string-to-string map of key-value pairs that identifies the tags that are associated with the application. Each tag consists of a required tag key and an associated tag value.

        • CreationDate — (String)

          The date and time when the Application was created.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getApplicationDateRangeKpi(params = {}, callback) ⇒ AWS.Request

Retrieves (queries) pre-aggregated data for a standard metric that applies to an application.

Service Reference:

Examples:

Calling the getApplicationDateRangeKpi operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  KpiName: 'STRING_VALUE', /* required */
  EndTime: new Date || 'Wed Dec 31 1969 16:00:00 GMT-0800 (PST)' || 123456789,
  NextToken: 'STRING_VALUE',
  PageSize: 'STRING_VALUE',
  StartTime: new Date || 'Wed Dec 31 1969 16:00:00 GMT-0800 (PST)' || 123456789
};
pinpoint.getApplicationDateRangeKpi(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • EndTime — (Date)

      The last date and time to retrieve data for, as part of an inclusive date range that filters the query results. This value should be in extended ISO 8601 format and use Coordinated Universal Time (UTC), for example: 2019-07-26T20:00:00Z for 8:00 PM UTC July 26, 2019.

    • KpiName — (String)

      The name of the metric, also referred to as a key performance indicator (KPI), to retrieve data for. This value describes the associated metric and consists of two or more terms, which are comprised of lowercase alphanumeric characters, separated by a hyphen. Examples are email-open-rate and successful-delivery-rate. For a list of valid values, see the Amazon Pinpoint Developer Guide.

    • NextToken — (String)

      The string that specifies which page of results to return in a paginated response. This parameter is not supported for application, campaign, and journey metrics.

    • PageSize — (String)

      The maximum number of items to include in each page of a paginated response. This parameter is not supported for application, campaign, and journey metrics.

    • StartTime — (Date)

      The first date and time to retrieve data for, as part of an inclusive date range that filters the query results. This value should be in extended ISO 8601 format and use Coordinated Universal Time (UTC), for example: 2019-07-19T20:00:00Z for 8:00 PM UTC July 19, 2019. This value should also be fewer than 90 days from the current day.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • ApplicationDateRangeKpiResponse — (map)

        Provides the results of a query that retrieved the data for a standard metric that applies to an application, and provides information about that query.

        • ApplicationIdrequired — (String)

          The unique identifier for the application that the metric applies to.

        • EndTimerequired — (Date)

          The last date and time of the date range that was used to filter the query results, in extended ISO 8601 format. The date range is inclusive.

        • KpiNamerequired — (String)

          The name of the metric, also referred to as a key performance indicator (KPI), that the data was retrieved for. This value describes the associated metric and consists of two or more terms, which are comprised of lowercase alphanumeric characters, separated by a hyphen. For a list of possible values, see the Amazon Pinpoint Developer Guide.

        • KpiResultrequired — (map)

          An array of objects that contains the results of the query. Each object contains the value for the metric and metadata about that value.

          • Rowsrequired — (Array<map>)

            An array of objects that provides the results of a query that retrieved the data for a standard metric that applies to an application, campaign, or journey.

            • GroupedBysrequired — (Array<map>)

              An array of objects that defines the field and field values that were used to group data in a result set that contains multiple results. This value is null if the data in a result set isn’t grouped.

              • Keyrequired — (String)

                The friendly name of the metric whose value is specified by the Value property.

              • Typerequired — (String)

                The data type of the value specified by the Value property.

              • Valuerequired — (String)

                In a Values object, the value for the metric that the query retrieved data for. In a GroupedBys object, the value for the field that was used to group data in a result set that contains multiple results (Values objects).

            • Valuesrequired — (Array<map>)

              An array of objects that provides pre-aggregated values for a standard metric that applies to an application, campaign, or journey.

              • Keyrequired — (String)

                The friendly name of the metric whose value is specified by the Value property.

              • Typerequired — (String)

                The data type of the value specified by the Value property.

              • Valuerequired — (String)

                In a Values object, the value for the metric that the query retrieved data for. In a GroupedBys object, the value for the field that was used to group data in a result set that contains multiple results (Values objects).

        • NextToken — (String)

          The string to use in a subsequent request to get the next page of results in a paginated response. This value is null for the Application Metrics resource because the resource returns all results in a single page.

        • StartTimerequired — (Date)

          The first date and time of the date range that was used to filter the query results, in extended ISO 8601 format. The date range is inclusive.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getApplicationSettings(params = {}, callback) ⇒ AWS.Request

Retrieves information about the settings for an application.

Service Reference:

Examples:

Calling the getApplicationSettings operation

var params = {
  ApplicationId: 'STRING_VALUE' /* required */
};
pinpoint.getApplicationSettings(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • ApplicationSettingsResource — (map)

        Provides information about an application, including the default settings for an application.

        • ApplicationIdrequired — (String)

          The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

        • CampaignHook — (map)

          The settings for the AWS Lambda function to invoke by default as a code hook for campaigns in the application. You can use this hook to customize segments that are used by campaigns in the application.

          • LambdaFunctionName — (String)

            The name or Amazon Resource Name (ARN) of the AWS Lambda function that Amazon Pinpoint invokes to customize a segment for a campaign.

          • Mode — (String)

            The mode that Amazon Pinpoint uses to invoke the AWS Lambda function. Possible values are:

            • FILTER - Invoke the function to customize the segment that's used by a campaign.

            • DELIVERY - (Deprecated) Previously, invoked the function to send a campaign through a custom channel. This functionality is not supported anymore. To send a campaign through a custom channel, use the CustomDeliveryConfiguration and CampaignCustomMessage objects of the campaign.

            Possible values include:
            • "DELIVERY"
            • "FILTER"
          • WebUrl — (String)

            The web URL that Amazon Pinpoint calls to invoke the AWS Lambda function over HTTPS.

        • LastModifiedDate — (String)

          The date and time, in ISO 8601 format, when the application's settings were last modified.

        • Limits — (map)

          The default sending limits for campaigns in the application.

          • Daily — (Integer)

            The maximum number of messages that a campaign can send to a single endpoint during a 24-hour period. For an application, this value specifies the default limit for the number of messages that campaigns and journeys can send to a single endpoint during a 24-hour period. The maximum value is 100.

          • MaximumDuration — (Integer)

            The maximum amount of time, in seconds, that a campaign can attempt to deliver a message after the scheduled start time for the campaign. The minimum value is 60 seconds.

          • MessagesPerSecond — (Integer)

            The maximum number of messages that a campaign can send each second. For an application, this value specifies the default limit for the number of messages that campaigns can send each second. The minimum value is 1. The maximum value is 20,000.

          • Total — (Integer)

            The maximum number of messages that a campaign can send to a single endpoint during the course of the campaign. If a campaign recurs, this setting applies to all runs of the campaign. The maximum value is 100.

          • Session — (Integer)

            The maximum total number of messages that the campaign can send per user session.

        • QuietTime — (map)

          The default quiet time for campaigns in the application. Quiet time is a specific time range when messages aren't sent to endpoints, if all the following conditions are met:

          • The EndpointDemographic.Timezone property of the endpoint is set to a valid value.

          • The current time in the endpoint's time zone is later than or equal to the time specified by the QuietTime.Start property for the application (or a campaign or journey that has custom quiet time settings).

          • The current time in the endpoint's time zone is earlier than or equal to the time specified by the QuietTime.End property for the application (or a campaign or journey that has custom quiet time settings).

          If any of the preceding conditions isn't met, the endpoint will receive messages from a campaign or journey, even if quiet time is enabled.

          • End — (String)

            The specific time when quiet time ends. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

          • Start — (String)

            The specific time when quiet time begins. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

        • JourneyLimits — (map)

          The default sending limits for journeys in the application. These limits apply to each journey for the application but can be overridden, on a per journey basis, with the JourneyLimits resource.

          • DailyCap — (Integer)

            The daily number of messages that an endpoint can receive from all journeys. The maximum value is 100. If set to 0, this limit will not apply.

          • TimeframeCap — (map)

            The default maximum number of messages that can be sent to an endpoint during the specified timeframe for all journeys.

            • Cap — (Integer)

              The maximum number of messages that all journeys can send to an endpoint during the specified timeframe. The maximum value is 100. If set to 0, this limit will not apply.

            • Days — (Integer)

              The length of the timeframe in days. The maximum value is 30. If set to 0, this limit will not apply.

          • TotalCap — (Integer)

            The default maximum number of messages that a single journey can sent to a single endpoint. The maximum value is 100. If set to 0, this limit will not apply.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getApps(params = {}, callback) ⇒ AWS.Request

Retrieves information about all the applications that are associated with your Amazon Pinpoint account.

Service Reference:

Examples:

Calling the getApps operation

var params = {
  PageSize: 'STRING_VALUE',
  Token: 'STRING_VALUE'
};
pinpoint.getApps(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • PageSize — (String)

      The maximum number of items to include in each page of a paginated response. This parameter is not supported for application, campaign, and journey metrics.

    • Token — (String)

      The NextToken string that specifies which page of results to return in a paginated response.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • ApplicationsResponse — (map)

        Provides information about all of your applications.

        • Item — (Array<map>)

          An array of responses, one for each application that was returned.

          • Arnrequired — (String)

            The Amazon Resource Name (ARN) of the application.

          • Idrequired — (String)

            The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

          • Namerequired — (String)

            The display name of the application. This name is displayed as the Project name on the Amazon Pinpoint console.

          • tags — (map<String>)

            A string-to-string map of key-value pairs that identifies the tags that are associated with the application. Each tag consists of a required tag key and an associated tag value.

          • CreationDate — (String)

            The date and time when the Application was created.

        • NextToken — (String)

          The string to use in a subsequent request to get the next page of results in a paginated response. This value is null if there are no additional pages.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getBaiduChannel(params = {}, callback) ⇒ AWS.Request

Retrieves information about the status and settings of the Baidu channel for an application.

Service Reference:

Examples:

Calling the getBaiduChannel operation

var params = {
  ApplicationId: 'STRING_VALUE' /* required */
};
pinpoint.getBaiduChannel(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • BaiduChannelResponse — (map)

        Provides information about the status and settings of the Baidu (Baidu Cloud Push) channel for an application.

        • ApplicationId — (String)

          The unique identifier for the application that the Baidu channel applies to.

        • CreationDate — (String)

          The date and time when the Baidu channel was enabled.

        • Credentialrequired — (String)

          The API key that you received from the Baidu Cloud Push service to communicate with the service.

        • Enabled — (Boolean)

          Specifies whether the Baidu channel is enabled for the application.

        • HasCredential — (Boolean)

          (Not used) This property is retained only for backward compatibility.

        • Id — (String)

          (Deprecated) An identifier for the Baidu channel. This property is retained only for backward compatibility.

        • IsArchived — (Boolean)

          Specifies whether the Baidu channel is archived.

        • LastModifiedBy — (String)

          The user who last modified the Baidu channel.

        • LastModifiedDate — (String)

          The date and time when the Baidu channel was last modified.

        • Platformrequired — (String)

          The type of messaging or notification platform for the channel. For the Baidu channel, this value is BAIDU.

        • Version — (Integer)

          The current version of the Baidu channel.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getCampaign(params = {}, callback) ⇒ AWS.Request

Retrieves information about the status, configuration, and other settings for a campaign.

Service Reference:

Examples:

Calling the getCampaign operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  CampaignId: 'STRING_VALUE' /* required */
};
pinpoint.getCampaign(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • CampaignId — (String)

      The unique identifier for the campaign.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • CampaignResponse — (map)

        Provides information about the status, configuration, and other settings for a campaign.

        • AdditionalTreatments — (Array<map>)

          An array of responses, one for each treatment that you defined for the campaign, in addition to the default treatment.

          • CustomDeliveryConfiguration — (map)

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

            • DeliveryUrirequired — (String)

              The destination to send the campaign or treatment to. This value can be one of the following:

              • The name or Amazon Resource Name (ARN) of an AWS Lambda function to invoke to handle delivery of the campaign or treatment.

              • The URL for a web application or service that supports HTTPS and can receive the message. The URL has to be a full URL, including the HTTPS protocol.

            • EndpointTypes — (Array<String>)

              The types of endpoints to send the campaign or treatment to. Each valid value maps to a type of channel that you can associate with an endpoint by using the ChannelType property of an endpoint.

          • Idrequired — (String)

            The unique identifier for the treatment.

          • MessageConfiguration — (map)

            The message configuration settings for the treatment.

            • ADMMessage — (map)

              The message that the campaign sends through the ADM (Amazon Device Messaging) channel. If specified, this message overrides the default message.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • APNSMessage — (map)

              The message that the campaign sends through the APNs (Apple Push Notification service) channel. If specified, this message overrides the default message.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • BaiduMessage — (map)

              The message that the campaign sends through the Baidu (Baidu Cloud Push) channel. If specified, this message overrides the default message.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • CustomMessage — (map)

              The message that the campaign sends through a custom channel, as specified by the delivery configuration (CustomDeliveryConfiguration) settings for the campaign. If specified, this message overrides the default message.

              • Data — (String)

                The raw, JSON-formatted string to use as the payload for the message. The maximum size is 5 KB.

            • DefaultMessage — (map)

              The default message that the campaign sends through all the channels that are configured for the campaign.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • EmailMessage — (map)

              The message that the campaign sends through the email channel. If specified, this message overrides the default message.

              • Body — (String)

                The body of the email for recipients whose email clients don't render HTML content.

              • FromAddress — (String)

                The verified email address to send the email from. The default address is the FromAddress specified for the email channel for the application.

              • Headers — (Array<map>)

                The list of MessageHeaders for the email. You can have up to 15 MessageHeaders for each email.

                • Name — (String)

                  The name of the message header. The header name can contain up to 126 characters.

                • Value — (String)

                  The value of the message header. The header value can contain up to 870 characters, including the length of any rendered attributes. For example if you add the {CreationDate} attribute, it renders as YYYY-MM-DDTHH:MM:SS.SSSZ and is 24 characters in length.

              • HtmlBody — (String)

                The body of the email, in HTML format, for recipients whose email clients render HTML content.

              • Title — (String)

                The subject line, or title, of the email.

            • GCMMessage — (map)

              The message that the campaign sends through the GCM channel, which enables Amazon Pinpoint to send push notifications through the Firebase Cloud Messaging (FCM), formerly Google Cloud Messaging (GCM), service. If specified, this message overrides the default message.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • SMSMessage — (map)

              The message that the campaign sends through the SMS channel. If specified, this message overrides the default message.

              • Body — (String)

                The body of the SMS message.

              • MessageType — (String)

                The SMS message type. Valid values are TRANSACTIONAL (for messages that are critical or time-sensitive, such as a one-time passwords) and PROMOTIONAL (for messsages that aren't critical or time-sensitive, such as marketing messages).

                Possible values include:
                • "TRANSACTIONAL"
                • "PROMOTIONAL"
              • OriginationNumber — (String)

                The long code to send the SMS message from. This value should be one of the dedicated long codes that's assigned to your AWS account. Although it isn't required, we recommend that you specify the long code using an E.164 format to ensure prompt and accurate delivery of the message. For example, +12065550100.

              • SenderId — (String)

                The sender ID to display on recipients' devices when they receive the SMS message.

              • EntityId — (String)

                The entity ID or Principal Entity (PE) id received from the regulatory body for sending SMS in your country.

              • TemplateId — (String)

                The template ID received from the regulatory body for sending SMS in your country.

            • InAppMessage — (map)

              The in-app message configuration.

              • Body — (String)

                The message body of the notification, the email body or the text message.

              • Content — (Array<map>)

                In-app message content.

                • BackgroundColor — (String)

                  The background color for the message.

                • BodyConfig — (map)

                  The configuration for the message body.

                  • Alignmentrequired — (String)

                    The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

                    Possible values include:
                    • "LEFT"
                    • "CENTER"
                    • "RIGHT"
                  • Bodyrequired — (String)

                    Message Body.

                  • TextColorrequired — (String)

                    The text color.

                • HeaderConfig — (map)

                  The configuration for the message header.

                  • Alignmentrequired — (String)

                    The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

                    Possible values include:
                    • "LEFT"
                    • "CENTER"
                    • "RIGHT"
                  • Headerrequired — (String)

                    Message Header.

                  • TextColorrequired — (String)

                    The text color.

                • ImageUrl — (String)

                  The image url for the background of message.

                • PrimaryBtn — (map)

                  The first button inside the message.

                  • Android — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                  • DefaultConfig — (map)

                    Default button content.

                    • BackgroundColor — (String)

                      The background color of the button.

                    • BorderRadius — (Integer)

                      The border radius of the button.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                    • Textrequired — (String)

                      Button text.

                    • TextColor — (String)

                      The text color of the button.

                  • IOS — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                  • Web — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                • SecondaryBtn — (map)

                  The second button inside message.

                  • Android — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                  • DefaultConfig — (map)

                    Default button content.

                    • BackgroundColor — (String)

                      The background color of the button.

                    • BorderRadius — (Integer)

                      The border radius of the button.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                    • Textrequired — (String)

                      Button text.

                    • TextColor — (String)

                      The text color of the button.

                  • IOS — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                  • Web — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

              • CustomConfig — (map<String>)

                Custom config to be sent to client.

              • Layout — (String)

                In-app message layout.

                Possible values include:
                • "BOTTOM_BANNER"
                • "TOP_BANNER"
                • "OVERLAYS"
                • "MOBILE_FEED"
                • "MIDDLE_BANNER"
                • "CAROUSEL"
          • Schedule — (map)

            The schedule settings for the treatment.

            • EndTime — (String)

              The scheduled time, in ISO 8601 format, when the campaign ended or will end.

            • EventFilter — (map)

              The type of event that causes the campaign to be sent, if the value of the Frequency property is EVENT.

              • Dimensionsrequired — (map)

                The dimension settings of the event filter for the campaign.

                • Attributes — (map<map>)

                  One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                  • AttributeType — (String)

                    The type of segment dimension to use. Valid values are:

                    • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                    • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                    • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                    • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                    • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                    • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                    • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                    • Possible values include:
                      • "INCLUSIVE"
                      • "EXCLUSIVE"
                      • "CONTAINS"
                      • "BEFORE"
                      • "AFTER"
                      • "ON"
                      • "BETWEEN"
                    • Valuesrequired — (Array<String>)

                      The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                  • EventType — (map)

                    The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                    • DimensionType — (String)

                      The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                      Possible values include:
                      • "INCLUSIVE"
                      • "EXCLUSIVE"
                    • Valuesrequired — (Array<String>)

                      The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                  • Metrics — (map<map>)

                    One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                    • ComparisonOperatorrequired — (String)

                      The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                    • Valuerequired — (Float)

                      The value to compare.

                • FilterTyperequired — (String)

                  The type of event that causes the campaign to be sent. Valid values are: SYSTEM, sends the campaign when a system event occurs; and, ENDPOINT, sends the campaign when an endpoint event (Events resource) occurs.

                  Possible values include:
                  • "SYSTEM"
                  • "ENDPOINT"
              • Frequency — (String)

                Specifies how often the campaign is sent or whether the campaign is sent in response to a specific event.

                Possible values include:
                • "ONCE"
                • "HOURLY"
                • "DAILY"
                • "WEEKLY"
                • "MONTHLY"
                • "EVENT"
                • "IN_APP_EVENT"
              • IsLocalTime — (Boolean)

                Specifies whether the start and end times for the campaign schedule use each recipient's local time. To base the schedule on each recipient's local time, set this value to true.

              • QuietTime — (map)

                The default quiet time for the campaign. Quiet time is a specific time range when a campaign doesn't send messages to endpoints, if all the following conditions are met:

                • The EndpointDemographic.Timezone property of the endpoint is set to a valid value.

                • The current time in the endpoint's time zone is later than or equal to the time specified by the QuietTime.Start property for the campaign.

                • The current time in the endpoint's time zone is earlier than or equal to the time specified by the QuietTime.End property for the campaign.

                If any of the preceding conditions isn't met, the endpoint will receive messages from the campaign, even if quiet time is enabled.

                • End — (String)

                  The specific time when quiet time ends. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

                • Start — (String)

                  The specific time when quiet time begins. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

              • StartTimerequired — (String)

                The scheduled time when the campaign began or will begin. Valid values are: IMMEDIATE, to start the campaign immediately; or, a specific time in ISO 8601 format.

              • Timezone — (String)

                The starting UTC offset for the campaign schedule, if the value of the IsLocalTime property is true. Valid values are: UTC, UTC+01, UTC+02, UTC+03, UTC+03:30, UTC+04, UTC+04:30, UTC+05, UTC+05:30, UTC+05:45, UTC+06, UTC+06:30, UTC+07, UTC+08, UTC+09, UTC+09:30, UTC+10, UTC+10:30, UTC+11, UTC+12, UTC+13, UTC-02, UTC-03, UTC-04, UTC-05, UTC-06, UTC-07, UTC-08, UTC-09, UTC-10, and UTC-11.

            • SizePercentrequired — (Integer)

              The allocated percentage of users (segment members) that the treatment is sent to.

            • State — (map)

              The current status of the treatment.

              • CampaignStatus — (String)

                The current status of the campaign, or the current status of a treatment that belongs to an A/B test campaign.

                If a campaign uses A/B testing, the campaign has a status of COMPLETED only if all campaign treatments have a status of COMPLETED. If you delete the segment that's associated with a campaign, the campaign fails and has a status of DELETED.

                Possible values include:
                • "SCHEDULED"
                • "EXECUTING"
                • "PENDING_NEXT_RUN"
                • "COMPLETED"
                • "PAUSED"
                • "DELETED"
                • "INVALID"
            • TemplateConfiguration — (map)

              The message template to use for the treatment.

              • EmailTemplate — (map)

                The email template to use for the message.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • PushTemplate — (map)

                The push notification template to use for the message.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • SMSTemplate — (map)

                The SMS template to use for the message.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • VoiceTemplate — (map)

                The voice template to use for the message. This object isn't supported for campaigns.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • InAppTemplate — (map)

                The InApp template to use for the message. The InApp template object is not supported for SendMessages.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

            • TreatmentDescription — (String)

              The custom description of the treatment.

            • TreatmentName — (String)

              The custom name of the treatment.

          • ApplicationIdrequired — (String)

            The unique identifier for the application that the campaign applies to.

          • Arnrequired — (String)

            The Amazon Resource Name (ARN) of the campaign.

          • CreationDaterequired — (String)

            The date, in ISO 8601 format, when the campaign was created.

          • CustomDeliveryConfiguration — (map)

            The delivery configuration settings for sending the campaign through a custom channel.

            • DeliveryUrirequired — (String)

              The destination to send the campaign or treatment to. This value can be one of the following:

              • The name or Amazon Resource Name (ARN) of an AWS Lambda function to invoke to handle delivery of the campaign or treatment.

              • The URL for a web application or service that supports HTTPS and can receive the message. The URL has to be a full URL, including the HTTPS protocol.

            • EndpointTypes — (Array<String>)

              The types of endpoints to send the campaign or treatment to. Each valid value maps to a type of channel that you can associate with an endpoint by using the ChannelType property of an endpoint.

          • DefaultState — (map)

            The current status of the campaign's default treatment. This value exists only for campaigns that have more than one treatment.

            • CampaignStatus — (String)

              The current status of the campaign, or the current status of a treatment that belongs to an A/B test campaign.

              If a campaign uses A/B testing, the campaign has a status of COMPLETED only if all campaign treatments have a status of COMPLETED. If you delete the segment that's associated with a campaign, the campaign fails and has a status of DELETED.

              Possible values include:
              • "SCHEDULED"
              • "EXECUTING"
              • "PENDING_NEXT_RUN"
              • "COMPLETED"
              • "PAUSED"
              • "DELETED"
              • "INVALID"
          • Description — (String)

            The custom description of the campaign.

          • HoldoutPercent — (Integer)

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

          • Hook — (map)

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

            • LambdaFunctionName — (String)

              The name or Amazon Resource Name (ARN) of the AWS Lambda function that Amazon Pinpoint invokes to customize a segment for a campaign.

            • Mode — (String)

              The mode that Amazon Pinpoint uses to invoke the AWS Lambda function. Possible values are:

              • FILTER - Invoke the function to customize the segment that's used by a campaign.

              • DELIVERY - (Deprecated) Previously, invoked the function to send a campaign through a custom channel. This functionality is not supported anymore. To send a campaign through a custom channel, use the CustomDeliveryConfiguration and CampaignCustomMessage objects of the campaign.

              Possible values include:
              • "DELIVERY"
              • "FILTER"
            • WebUrl — (String)

              The web URL that Amazon Pinpoint calls to invoke the AWS Lambda function over HTTPS.

          • Idrequired — (String)

            The unique identifier for the campaign.

          • IsPaused — (Boolean)

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

          • LastModifiedDaterequired — (String)

            The date, in ISO 8601 format, when the campaign was last modified.

          • Limits — (map)

            The messaging limits for the campaign.

            • Daily — (Integer)

              The maximum number of messages that a campaign can send to a single endpoint during a 24-hour period. For an application, this value specifies the default limit for the number of messages that campaigns and journeys can send to a single endpoint during a 24-hour period. The maximum value is 100.

            • MaximumDuration — (Integer)

              The maximum amount of time, in seconds, that a campaign can attempt to deliver a message after the scheduled start time for the campaign. The minimum value is 60 seconds.

            • MessagesPerSecond — (Integer)

              The maximum number of messages that a campaign can send each second. For an application, this value specifies the default limit for the number of messages that campaigns can send each second. The minimum value is 1. The maximum value is 20,000.

            • Total — (Integer)

              The maximum number of messages that a campaign can send to a single endpoint during the course of the campaign. If a campaign recurs, this setting applies to all runs of the campaign. The maximum value is 100.

            • Session — (Integer)

              The maximum total number of messages that the campaign can send per user session.

          • MessageConfiguration — (map)

            The message configuration settings for the campaign.

            • ADMMessage — (map)

              The message that the campaign sends through the ADM (Amazon Device Messaging) channel. If specified, this message overrides the default message.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • APNSMessage — (map)

              The message that the campaign sends through the APNs (Apple Push Notification service) channel. If specified, this message overrides the default message.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • BaiduMessage — (map)

              The message that the campaign sends through the Baidu (Baidu Cloud Push) channel. If specified, this message overrides the default message.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • CustomMessage — (map)

              The message that the campaign sends through a custom channel, as specified by the delivery configuration (CustomDeliveryConfiguration) settings for the campaign. If specified, this message overrides the default message.

              • Data — (String)

                The raw, JSON-formatted string to use as the payload for the message. The maximum size is 5 KB.

            • DefaultMessage — (map)

              The default message that the campaign sends through all the channels that are configured for the campaign.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • EmailMessage — (map)

              The message that the campaign sends through the email channel. If specified, this message overrides the default message.

              • Body — (String)

                The body of the email for recipients whose email clients don't render HTML content.

              • FromAddress — (String)

                The verified email address to send the email from. The default address is the FromAddress specified for the email channel for the application.

              • Headers — (Array<map>)

                The list of MessageHeaders for the email. You can have up to 15 MessageHeaders for each email.

                • Name — (String)

                  The name of the message header. The header name can contain up to 126 characters.

                • Value — (String)

                  The value of the message header. The header value can contain up to 870 characters, including the length of any rendered attributes. For example if you add the {CreationDate} attribute, it renders as YYYY-MM-DDTHH:MM:SS.SSSZ and is 24 characters in length.

              • HtmlBody — (String)

                The body of the email, in HTML format, for recipients whose email clients render HTML content.

              • Title — (String)

                The subject line, or title, of the email.

            • GCMMessage — (map)

              The message that the campaign sends through the GCM channel, which enables Amazon Pinpoint to send push notifications through the Firebase Cloud Messaging (FCM), formerly Google Cloud Messaging (GCM), service. If specified, this message overrides the default message.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • SMSMessage — (map)

              The message that the campaign sends through the SMS channel. If specified, this message overrides the default message.

              • Body — (String)

                The body of the SMS message.

              • MessageType — (String)

                The SMS message type. Valid values are TRANSACTIONAL (for messages that are critical or time-sensitive, such as a one-time passwords) and PROMOTIONAL (for messsages that aren't critical or time-sensitive, such as marketing messages).

                Possible values include:
                • "TRANSACTIONAL"
                • "PROMOTIONAL"
              • OriginationNumber — (String)

                The long code to send the SMS message from. This value should be one of the dedicated long codes that's assigned to your AWS account. Although it isn't required, we recommend that you specify the long code using an E.164 format to ensure prompt and accurate delivery of the message. For example, +12065550100.

              • SenderId — (String)

                The sender ID to display on recipients' devices when they receive the SMS message.

              • EntityId — (String)

                The entity ID or Principal Entity (PE) id received from the regulatory body for sending SMS in your country.

              • TemplateId — (String)

                The template ID received from the regulatory body for sending SMS in your country.

            • InAppMessage — (map)

              The in-app message configuration.

              • Body — (String)

                The message body of the notification, the email body or the text message.

              • Content — (Array<map>)

                In-app message content.

                • BackgroundColor — (String)

                  The background color for the message.

                • BodyConfig — (map)

                  The configuration for the message body.

                  • Alignmentrequired — (String)

                    The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

                    Possible values include:
                    • "LEFT"
                    • "CENTER"
                    • "RIGHT"
                  • Bodyrequired — (String)

                    Message Body.

                  • TextColorrequired — (String)

                    The text color.

                • HeaderConfig — (map)

                  The configuration for the message header.

                  • Alignmentrequired — (String)

                    The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

                    Possible values include:
                    • "LEFT"
                    • "CENTER"
                    • "RIGHT"
                  • Headerrequired — (String)

                    Message Header.

                  • TextColorrequired — (String)

                    The text color.

                • ImageUrl — (String)

                  The image url for the background of message.

                • PrimaryBtn — (map)

                  The first button inside the message.

                  • Android — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                  • DefaultConfig — (map)

                    Default button content.

                    • BackgroundColor — (String)

                      The background color of the button.

                    • BorderRadius — (Integer)

                      The border radius of the button.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                    • Textrequired — (String)

                      Button text.

                    • TextColor — (String)

                      The text color of the button.

                  • IOS — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                  • Web — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                • SecondaryBtn — (map)

                  The second button inside message.

                  • Android — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                  • DefaultConfig — (map)

                    Default button content.

                    • BackgroundColor — (String)

                      The background color of the button.

                    • BorderRadius — (Integer)

                      The border radius of the button.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                    • Textrequired — (String)

                      Button text.

                    • TextColor — (String)

                      The text color of the button.

                  • IOS — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                  • Web — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

              • CustomConfig — (map<String>)

                Custom config to be sent to client.

              • Layout — (String)

                In-app message layout.

                Possible values include:
                • "BOTTOM_BANNER"
                • "TOP_BANNER"
                • "OVERLAYS"
                • "MOBILE_FEED"
                • "MIDDLE_BANNER"
                • "CAROUSEL"
          • Name — (String)

            The name of the campaign.

          • Schedule — (map)

            The schedule settings for the campaign.

            • EndTime — (String)

              The scheduled time, in ISO 8601 format, when the campaign ended or will end.

            • EventFilter — (map)

              The type of event that causes the campaign to be sent, if the value of the Frequency property is EVENT.

              • Dimensionsrequired — (map)

                The dimension settings of the event filter for the campaign.

                • Attributes — (map<map>)

                  One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                  • AttributeType — (String)

                    The type of segment dimension to use. Valid values are:

                    • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                    • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                    • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                    • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                    • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                    • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                    • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                    • Possible values include:
                      • "INCLUSIVE"
                      • "EXCLUSIVE"
                      • "CONTAINS"
                      • "BEFORE"
                      • "AFTER"
                      • "ON"
                      • "BETWEEN"
                    • Valuesrequired — (Array<String>)

                      The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                  • EventType — (map)

                    The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                    • DimensionType — (String)

                      The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                      Possible values include:
                      • "INCLUSIVE"
                      • "EXCLUSIVE"
                    • Valuesrequired — (Array<String>)

                      The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                  • Metrics — (map<map>)

                    One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                    • ComparisonOperatorrequired — (String)

                      The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                    • Valuerequired — (Float)

                      The value to compare.

                • FilterTyperequired — (String)

                  The type of event that causes the campaign to be sent. Valid values are: SYSTEM, sends the campaign when a system event occurs; and, ENDPOINT, sends the campaign when an endpoint event (Events resource) occurs.

                  Possible values include:
                  • "SYSTEM"
                  • "ENDPOINT"
              • Frequency — (String)

                Specifies how often the campaign is sent or whether the campaign is sent in response to a specific event.

                Possible values include:
                • "ONCE"
                • "HOURLY"
                • "DAILY"
                • "WEEKLY"
                • "MONTHLY"
                • "EVENT"
                • "IN_APP_EVENT"
              • IsLocalTime — (Boolean)

                Specifies whether the start and end times for the campaign schedule use each recipient's local time. To base the schedule on each recipient's local time, set this value to true.

              • QuietTime — (map)

                The default quiet time for the campaign. Quiet time is a specific time range when a campaign doesn't send messages to endpoints, if all the following conditions are met:

                • The EndpointDemographic.Timezone property of the endpoint is set to a valid value.

                • The current time in the endpoint's time zone is later than or equal to the time specified by the QuietTime.Start property for the campaign.

                • The current time in the endpoint's time zone is earlier than or equal to the time specified by the QuietTime.End property for the campaign.

                If any of the preceding conditions isn't met, the endpoint will receive messages from the campaign, even if quiet time is enabled.

                • End — (String)

                  The specific time when quiet time ends. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

                • Start — (String)

                  The specific time when quiet time begins. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

              • StartTimerequired — (String)

                The scheduled time when the campaign began or will begin. Valid values are: IMMEDIATE, to start the campaign immediately; or, a specific time in ISO 8601 format.

              • Timezone — (String)

                The starting UTC offset for the campaign schedule, if the value of the IsLocalTime property is true. Valid values are: UTC, UTC+01, UTC+02, UTC+03, UTC+03:30, UTC+04, UTC+04:30, UTC+05, UTC+05:30, UTC+05:45, UTC+06, UTC+06:30, UTC+07, UTC+08, UTC+09, UTC+09:30, UTC+10, UTC+10:30, UTC+11, UTC+12, UTC+13, UTC-02, UTC-03, UTC-04, UTC-05, UTC-06, UTC-07, UTC-08, UTC-09, UTC-10, and UTC-11.

            • SegmentIdrequired — (String)

              The unique identifier for the segment that's associated with the campaign.

            • SegmentVersionrequired — (Integer)

              The version number of the segment that's associated with the campaign.

            • State — (map)

              The current status of the campaign.

              • CampaignStatus — (String)

                The current status of the campaign, or the current status of a treatment that belongs to an A/B test campaign.

                If a campaign uses A/B testing, the campaign has a status of COMPLETED only if all campaign treatments have a status of COMPLETED. If you delete the segment that's associated with a campaign, the campaign fails and has a status of DELETED.

                Possible values include:
                • "SCHEDULED"
                • "EXECUTING"
                • "PENDING_NEXT_RUN"
                • "COMPLETED"
                • "PAUSED"
                • "DELETED"
                • "INVALID"
            • tags — (map<String>)

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

            • TemplateConfiguration — (map)

              The message template that’s used for the campaign.

              • EmailTemplate — (map)

                The email template to use for the message.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • PushTemplate — (map)

                The push notification template to use for the message.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • SMSTemplate — (map)

                The SMS template to use for the message.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • VoiceTemplate — (map)

                The voice template to use for the message. This object isn't supported for campaigns.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • InAppTemplate — (map)

                The InApp template to use for the message. The InApp template object is not supported for SendMessages.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

            • TreatmentDescription — (String)

              The custom description of the default treatment for the campaign.

            • TreatmentName — (String)

              The 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.

            • Version — (Integer)

              The version number of the campaign.

            • Priority — (Integer)

              Defines the priority of the campaign, used to decide the order of messages displayed to user if there are multiple messages scheduled to be displayed at the same moment.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getCampaignActivities(params = {}, callback) ⇒ AWS.Request

Retrieves information about all the activities for a campaign.

Service Reference:

Examples:

Calling the getCampaignActivities operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  CampaignId: 'STRING_VALUE', /* required */
  PageSize: 'STRING_VALUE',
  Token: 'STRING_VALUE'
};
pinpoint.getCampaignActivities(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • CampaignId — (String)

      The unique identifier for the campaign.

    • PageSize — (String)

      The maximum number of items to include in each page of a paginated response. This parameter is not supported for application, campaign, and journey metrics.

    • Token — (String)

      The NextToken string that specifies which page of results to return in a paginated response.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • ActivitiesResponse — (map)

        Provides information about the activities that were performed by a campaign.

        • Itemrequired — (Array<map>)

          An array of responses, one for each activity that was performed by the campaign.

          • ApplicationIdrequired — (String)

            The unique identifier for the application that the campaign applies to.

          • CampaignIdrequired — (String)

            The unique identifier for the campaign that the activity applies to.

          • End — (String)

            The actual time, in ISO 8601 format, when the activity was marked CANCELLED or COMPLETED.

          • Idrequired — (String)

            The unique identifier for the activity.

          • Result — (String)

            Specifies whether the activity succeeded. Possible values are SUCCESS and FAIL.

          • ScheduledStart — (String)

            The scheduled start time, in ISO 8601 format, for the activity.

          • Start — (String)

            The actual start time, in ISO 8601 format, of the activity.

          • State — (String)

            The current status of the activity. Possible values are: PENDING, INITIALIZING, RUNNING, PAUSED, CANCELLED, and COMPLETED.

          • SuccessfulEndpointCount — (Integer)

            The total number of endpoints that the campaign successfully delivered messages to.

          • TimezonesCompletedCount — (Integer)

            The total number of time zones that were completed.

          • TimezonesTotalCount — (Integer)

            The total number of unique time zones that are in the segment for the campaign.

          • TotalEndpointCount — (Integer)

            The total number of endpoints that the campaign attempted to deliver messages to.

          • TreatmentId — (String)

            The unique identifier for the campaign treatment that the activity applies to. A treatment is a variation of a campaign that's used for A/B testing of a campaign.

          • ExecutionMetrics — (map<String>)

            A JSON object that contains metrics relating to the campaign execution for this campaign activity. For information about the structure and contents of the results, see Standard Amazon Pinpoint analytics metrics in the Amazon Pinpoint Developer Guide.

        • NextToken — (String)

          The string to use in a subsequent request to get the next page of results in a paginated response. This value is null if there are no additional pages.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getCampaignDateRangeKpi(params = {}, callback) ⇒ AWS.Request

Retrieves (queries) pre-aggregated data for a standard metric that applies to a campaign.

Service Reference:

Examples:

Calling the getCampaignDateRangeKpi operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  CampaignId: 'STRING_VALUE', /* required */
  KpiName: 'STRING_VALUE', /* required */
  EndTime: new Date || 'Wed Dec 31 1969 16:00:00 GMT-0800 (PST)' || 123456789,
  NextToken: 'STRING_VALUE',
  PageSize: 'STRING_VALUE',
  StartTime: new Date || 'Wed Dec 31 1969 16:00:00 GMT-0800 (PST)' || 123456789
};
pinpoint.getCampaignDateRangeKpi(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • CampaignId — (String)

      The unique identifier for the campaign.

    • EndTime — (Date)

      The last date and time to retrieve data for, as part of an inclusive date range that filters the query results. This value should be in extended ISO 8601 format and use Coordinated Universal Time (UTC), for example: 2019-07-26T20:00:00Z for 8:00 PM UTC July 26, 2019.

    • KpiName — (String)

      The name of the metric, also referred to as a key performance indicator (KPI), to retrieve data for. This value describes the associated metric and consists of two or more terms, which are comprised of lowercase alphanumeric characters, separated by a hyphen. Examples are email-open-rate and successful-delivery-rate. For a list of valid values, see the Amazon Pinpoint Developer Guide.

    • NextToken — (String)

      The string that specifies which page of results to return in a paginated response. This parameter is not supported for application, campaign, and journey metrics.

    • PageSize — (String)

      The maximum number of items to include in each page of a paginated response. This parameter is not supported for application, campaign, and journey metrics.

    • StartTime — (Date)

      The first date and time to retrieve data for, as part of an inclusive date range that filters the query results. This value should be in extended ISO 8601 format and use Coordinated Universal Time (UTC), for example: 2019-07-19T20:00:00Z for 8:00 PM UTC July 19, 2019. This value should also be fewer than 90 days from the current day.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • CampaignDateRangeKpiResponse — (map)

        Provides the results of a query that retrieved the data for a standard metric that applies to a campaign, and provides information about that query.

        • ApplicationIdrequired — (String)

          The unique identifier for the application that the metric applies to.

        • CampaignIdrequired — (String)

          The unique identifier for the campaign that the metric applies to.

        • EndTimerequired — (Date)

          The last date and time of the date range that was used to filter the query results, in extended ISO 8601 format. The date range is inclusive.

        • KpiNamerequired — (String)

          The name of the metric, also referred to as a key performance indicator (KPI), that the data was retrieved for. This value describes the associated metric and consists of two or more terms, which are comprised of lowercase alphanumeric characters, separated by a hyphen. For a list of possible values, see the Amazon Pinpoint Developer Guide.

        • KpiResultrequired — (map)

          An array of objects that contains the results of the query. Each object contains the value for the metric and metadata about that value.

          • Rowsrequired — (Array<map>)

            An array of objects that provides the results of a query that retrieved the data for a standard metric that applies to an application, campaign, or journey.

            • GroupedBysrequired — (Array<map>)

              An array of objects that defines the field and field values that were used to group data in a result set that contains multiple results. This value is null if the data in a result set isn’t grouped.

              • Keyrequired — (String)

                The friendly name of the metric whose value is specified by the Value property.

              • Typerequired — (String)

                The data type of the value specified by the Value property.

              • Valuerequired — (String)

                In a Values object, the value for the metric that the query retrieved data for. In a GroupedBys object, the value for the field that was used to group data in a result set that contains multiple results (Values objects).

            • Valuesrequired — (Array<map>)

              An array of objects that provides pre-aggregated values for a standard metric that applies to an application, campaign, or journey.

              • Keyrequired — (String)

                The friendly name of the metric whose value is specified by the Value property.

              • Typerequired — (String)

                The data type of the value specified by the Value property.

              • Valuerequired — (String)

                In a Values object, the value for the metric that the query retrieved data for. In a GroupedBys object, the value for the field that was used to group data in a result set that contains multiple results (Values objects).

        • NextToken — (String)

          The string to use in a subsequent request to get the next page of results in a paginated response. This value is null for the Campaign Metrics resource because the resource returns all results in a single page.

        • StartTimerequired — (Date)

          The first date and time of the date range that was used to filter the query results, in extended ISO 8601 format. The date range is inclusive.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getCampaigns(params = {}, callback) ⇒ AWS.Request

Retrieves information about the status, configuration, and other settings for all the campaigns that are associated with an application.

Service Reference:

Examples:

Calling the getCampaigns operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  PageSize: 'STRING_VALUE',
  Token: 'STRING_VALUE'
};
pinpoint.getCampaigns(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • PageSize — (String)

      The maximum number of items to include in each page of a paginated response. This parameter is not supported for application, campaign, and journey metrics.

    • Token — (String)

      The NextToken string that specifies which page of results to return in a paginated response.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • CampaignsResponse — (map)

        Provides information about the configuration and other settings for all the campaigns that are associated with an application.

        • Itemrequired — (Array<map>)

          An array of responses, one for each campaign that's associated with the application.

          • AdditionalTreatments — (Array<map>)

            An array of responses, one for each treatment that you defined for the campaign, in addition to the default treatment.

            • CustomDeliveryConfiguration — (map)

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

              • DeliveryUrirequired — (String)

                The destination to send the campaign or treatment to. This value can be one of the following:

                • The name or Amazon Resource Name (ARN) of an AWS Lambda function to invoke to handle delivery of the campaign or treatment.

                • The URL for a web application or service that supports HTTPS and can receive the message. The URL has to be a full URL, including the HTTPS protocol.

              • EndpointTypes — (Array<String>)

                The types of endpoints to send the campaign or treatment to. Each valid value maps to a type of channel that you can associate with an endpoint by using the ChannelType property of an endpoint.

            • Idrequired — (String)

              The unique identifier for the treatment.

            • MessageConfiguration — (map)

              The message configuration settings for the treatment.

              • ADMMessage — (map)

                The message that the campaign sends through the ADM (Amazon Device Messaging) channel. If specified, this message overrides the default message.

                • Action — (String)

                  The action to occur if a recipient taps the push notification. Valid values are:

                  • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                  • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                  • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                  Possible values include:
                  • "OPEN_APP"
                  • "DEEP_LINK"
                  • "URL"
                • Body — (String)

                  The body of the notification message. The maximum number of characters is 200.

                • ImageIconUrl — (String)

                  The URL of the image to display as the push-notification icon, such as the icon for the app.

                • ImageSmallIconUrl — (String)

                  The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

                • ImageUrl — (String)

                  The URL of an image to display in the push notification.

                • JsonBody — (String)

                  The JSON payload to use for a silent push notification.

                • MediaUrl — (String)

                  The URL of the image or video to display in the push notification.

                • RawContent — (String)

                  The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

                • SilentPush — (Boolean)

                  Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

                • TimeToLive — (Integer)

                  The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                  This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

                • Title — (String)

                  The title to display above the notification message on a recipient's device.

                • Url — (String)

                  The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

              • APNSMessage — (map)

                The message that the campaign sends through the APNs (Apple Push Notification service) channel. If specified, this message overrides the default message.

                • Action — (String)

                  The action to occur if a recipient taps the push notification. Valid values are:

                  • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                  • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                  • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                  Possible values include:
                  • "OPEN_APP"
                  • "DEEP_LINK"
                  • "URL"
                • Body — (String)

                  The body of the notification message. The maximum number of characters is 200.

                • ImageIconUrl — (String)

                  The URL of the image to display as the push-notification icon, such as the icon for the app.

                • ImageSmallIconUrl — (String)

                  The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

                • ImageUrl — (String)

                  The URL of an image to display in the push notification.

                • JsonBody — (String)

                  The JSON payload to use for a silent push notification.

                • MediaUrl — (String)

                  The URL of the image or video to display in the push notification.

                • RawContent — (String)

                  The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

                • SilentPush — (Boolean)

                  Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

                • TimeToLive — (Integer)

                  The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                  This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

                • Title — (String)

                  The title to display above the notification message on a recipient's device.

                • Url — (String)

                  The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

              • BaiduMessage — (map)

                The message that the campaign sends through the Baidu (Baidu Cloud Push) channel. If specified, this message overrides the default message.

                • Action — (String)

                  The action to occur if a recipient taps the push notification. Valid values are:

                  • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                  • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                  • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                  Possible values include:
                  • "OPEN_APP"
                  • "DEEP_LINK"
                  • "URL"
                • Body — (String)

                  The body of the notification message. The maximum number of characters is 200.

                • ImageIconUrl — (String)

                  The URL of the image to display as the push-notification icon, such as the icon for the app.

                • ImageSmallIconUrl — (String)

                  The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

                • ImageUrl — (String)

                  The URL of an image to display in the push notification.

                • JsonBody — (String)

                  The JSON payload to use for a silent push notification.

                • MediaUrl — (String)

                  The URL of the image or video to display in the push notification.

                • RawContent — (String)

                  The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

                • SilentPush — (Boolean)

                  Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

                • TimeToLive — (Integer)

                  The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                  This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

                • Title — (String)

                  The title to display above the notification message on a recipient's device.

                • Url — (String)

                  The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

              • CustomMessage — (map)

                The message that the campaign sends through a custom channel, as specified by the delivery configuration (CustomDeliveryConfiguration) settings for the campaign. If specified, this message overrides the default message.

                • Data — (String)

                  The raw, JSON-formatted string to use as the payload for the message. The maximum size is 5 KB.

              • DefaultMessage — (map)

                The default message that the campaign sends through all the channels that are configured for the campaign.

                • Action — (String)

                  The action to occur if a recipient taps the push notification. Valid values are:

                  • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                  • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                  • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                  Possible values include:
                  • "OPEN_APP"
                  • "DEEP_LINK"
                  • "URL"
                • Body — (String)

                  The body of the notification message. The maximum number of characters is 200.

                • ImageIconUrl — (String)

                  The URL of the image to display as the push-notification icon, such as the icon for the app.

                • ImageSmallIconUrl — (String)

                  The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

                • ImageUrl — (String)

                  The URL of an image to display in the push notification.

                • JsonBody — (String)

                  The JSON payload to use for a silent push notification.

                • MediaUrl — (String)

                  The URL of the image or video to display in the push notification.

                • RawContent — (String)

                  The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

                • SilentPush — (Boolean)

                  Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

                • TimeToLive — (Integer)

                  The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                  This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

                • Title — (String)

                  The title to display above the notification message on a recipient's device.

                • Url — (String)

                  The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

              • EmailMessage — (map)

                The message that the campaign sends through the email channel. If specified, this message overrides the default message.

                • Body — (String)

                  The body of the email for recipients whose email clients don't render HTML content.

                • FromAddress — (String)

                  The verified email address to send the email from. The default address is the FromAddress specified for the email channel for the application.

                • Headers — (Array<map>)

                  The list of MessageHeaders for the email. You can have up to 15 MessageHeaders for each email.

                  • Name — (String)

                    The name of the message header. The header name can contain up to 126 characters.

                  • Value — (String)

                    The value of the message header. The header value can contain up to 870 characters, including the length of any rendered attributes. For example if you add the {CreationDate} attribute, it renders as YYYY-MM-DDTHH:MM:SS.SSSZ and is 24 characters in length.

                • HtmlBody — (String)

                  The body of the email, in HTML format, for recipients whose email clients render HTML content.

                • Title — (String)

                  The subject line, or title, of the email.

              • GCMMessage — (map)

                The message that the campaign sends through the GCM channel, which enables Amazon Pinpoint to send push notifications through the Firebase Cloud Messaging (FCM), formerly Google Cloud Messaging (GCM), service. If specified, this message overrides the default message.

                • Action — (String)

                  The action to occur if a recipient taps the push notification. Valid values are:

                  • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                  • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                  • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                  Possible values include:
                  • "OPEN_APP"
                  • "DEEP_LINK"
                  • "URL"
                • Body — (String)

                  The body of the notification message. The maximum number of characters is 200.

                • ImageIconUrl — (String)

                  The URL of the image to display as the push-notification icon, such as the icon for the app.

                • ImageSmallIconUrl — (String)

                  The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

                • ImageUrl — (String)

                  The URL of an image to display in the push notification.

                • JsonBody — (String)

                  The JSON payload to use for a silent push notification.

                • MediaUrl — (String)

                  The URL of the image or video to display in the push notification.

                • RawContent — (String)

                  The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

                • SilentPush — (Boolean)

                  Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

                • TimeToLive — (Integer)

                  The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                  This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

                • Title — (String)

                  The title to display above the notification message on a recipient's device.

                • Url — (String)

                  The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

              • SMSMessage — (map)

                The message that the campaign sends through the SMS channel. If specified, this message overrides the default message.

                • Body — (String)

                  The body of the SMS message.

                • MessageType — (String)

                  The SMS message type. Valid values are TRANSACTIONAL (for messages that are critical or time-sensitive, such as a one-time passwords) and PROMOTIONAL (for messsages that aren't critical or time-sensitive, such as marketing messages).

                  Possible values include:
                  • "TRANSACTIONAL"
                  • "PROMOTIONAL"
                • OriginationNumber — (String)

                  The long code to send the SMS message from. This value should be one of the dedicated long codes that's assigned to your AWS account. Although it isn't required, we recommend that you specify the long code using an E.164 format to ensure prompt and accurate delivery of the message. For example, +12065550100.

                • SenderId — (String)

                  The sender ID to display on recipients' devices when they receive the SMS message.

                • EntityId — (String)

                  The entity ID or Principal Entity (PE) id received from the regulatory body for sending SMS in your country.

                • TemplateId — (String)

                  The template ID received from the regulatory body for sending SMS in your country.

              • InAppMessage — (map)

                The in-app message configuration.

                • Body — (String)

                  The message body of the notification, the email body or the text message.

                • Content — (Array<map>)

                  In-app message content.

                  • BackgroundColor — (String)

                    The background color for the message.

                  • BodyConfig — (map)

                    The configuration for the message body.

                    • Alignmentrequired — (String)

                      The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

                      Possible values include:
                      • "LEFT"
                      • "CENTER"
                      • "RIGHT"
                    • Bodyrequired — (String)

                      Message Body.

                    • TextColorrequired — (String)

                      The text color.

                  • HeaderConfig — (map)

                    The configuration for the message header.

                    • Alignmentrequired — (String)

                      The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

                      Possible values include:
                      • "LEFT"
                      • "CENTER"
                      • "RIGHT"
                    • Headerrequired — (String)

                      Message Header.

                    • TextColorrequired — (String)

                      The text color.

                  • ImageUrl — (String)

                    The image url for the background of message.

                  • PrimaryBtn — (map)

                    The first button inside the message.

                    • Android — (map)

                      Default button content.

                      • ButtonActionrequired — (String)

                        Action triggered by the button.

                        Possible values include:
                        • "LINK"
                        • "DEEP_LINK"
                        • "CLOSE"
                      • Link — (String)

                        Button destination.

                    • DefaultConfig — (map)

                      Default button content.

                      • BackgroundColor — (String)

                        The background color of the button.

                      • BorderRadius — (Integer)

                        The border radius of the button.

                      • ButtonActionrequired — (String)

                        Action triggered by the button.

                        Possible values include:
                        • "LINK"
                        • "DEEP_LINK"
                        • "CLOSE"
                      • Link — (String)

                        Button destination.

                      • Textrequired — (String)

                        Button text.

                      • TextColor — (String)

                        The text color of the button.

                    • IOS — (map)

                      Default button content.

                      • ButtonActionrequired — (String)

                        Action triggered by the button.

                        Possible values include:
                        • "LINK"
                        • "DEEP_LINK"
                        • "CLOSE"
                      • Link — (String)

                        Button destination.

                    • Web — (map)

                      Default button content.

                      • ButtonActionrequired — (String)

                        Action triggered by the button.

                        Possible values include:
                        • "LINK"
                        • "DEEP_LINK"
                        • "CLOSE"
                      • Link — (String)

                        Button destination.

                  • SecondaryBtn — (map)

                    The second button inside message.

                    • Android — (map)

                      Default button content.

                      • ButtonActionrequired — (String)

                        Action triggered by the button.

                        Possible values include:
                        • "LINK"
                        • "DEEP_LINK"
                        • "CLOSE"
                      • Link — (String)

                        Button destination.

                    • DefaultConfig — (map)

                      Default button content.

                      • BackgroundColor — (String)

                        The background color of the button.

                      • BorderRadius — (Integer)

                        The border radius of the button.

                      • ButtonActionrequired — (String)

                        Action triggered by the button.

                        Possible values include:
                        • "LINK"
                        • "DEEP_LINK"
                        • "CLOSE"
                      • Link — (String)

                        Button destination.

                      • Textrequired — (String)

                        Button text.

                      • TextColor — (String)

                        The text color of the button.

                    • IOS — (map)

                      Default button content.

                      • ButtonActionrequired — (String)

                        Action triggered by the button.

                        Possible values include:
                        • "LINK"
                        • "DEEP_LINK"
                        • "CLOSE"
                      • Link — (String)

                        Button destination.

                    • Web — (map)

                      Default button content.

                      • ButtonActionrequired — (String)

                        Action triggered by the button.

                        Possible values include:
                        • "LINK"
                        • "DEEP_LINK"
                        • "CLOSE"
                      • Link — (String)

                        Button destination.

                • CustomConfig — (map<String>)

                  Custom config to be sent to client.

                • Layout — (String)

                  In-app message layout.

                  Possible values include:
                  • "BOTTOM_BANNER"
                  • "TOP_BANNER"
                  • "OVERLAYS"
                  • "MOBILE_FEED"
                  • "MIDDLE_BANNER"
                  • "CAROUSEL"
            • Schedule — (map)

              The schedule settings for the treatment.

              • EndTime — (String)

                The scheduled time, in ISO 8601 format, when the campaign ended or will end.

              • EventFilter — (map)

                The type of event that causes the campaign to be sent, if the value of the Frequency property is EVENT.

                • Dimensionsrequired — (map)

                  The dimension settings of the event filter for the campaign.

                  • Attributes — (map<map>)

                    One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                    • AttributeType — (String)

                      The type of segment dimension to use. Valid values are:

                      • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                      • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                      • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                      • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                      • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                      • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                      • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                      • Possible values include:
                        • "INCLUSIVE"
                        • "EXCLUSIVE"
                        • "CONTAINS"
                        • "BEFORE"
                        • "AFTER"
                        • "ON"
                        • "BETWEEN"
                      • Valuesrequired — (Array<String>)

                        The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                    • EventType — (map)

                      The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                      • DimensionType — (String)

                        The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                        Possible values include:
                        • "INCLUSIVE"
                        • "EXCLUSIVE"
                      • Valuesrequired — (Array<String>)

                        The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                    • Metrics — (map<map>)

                      One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                      • ComparisonOperatorrequired — (String)

                        The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                      • Valuerequired — (Float)

                        The value to compare.

                  • FilterTyperequired — (String)

                    The type of event that causes the campaign to be sent. Valid values are: SYSTEM, sends the campaign when a system event occurs; and, ENDPOINT, sends the campaign when an endpoint event (Events resource) occurs.

                    Possible values include:
                    • "SYSTEM"
                    • "ENDPOINT"
                • Frequency — (String)

                  Specifies how often the campaign is sent or whether the campaign is sent in response to a specific event.

                  Possible values include:
                  • "ONCE"
                  • "HOURLY"
                  • "DAILY"
                  • "WEEKLY"
                  • "MONTHLY"
                  • "EVENT"
                  • "IN_APP_EVENT"
                • IsLocalTime — (Boolean)

                  Specifies whether the start and end times for the campaign schedule use each recipient's local time. To base the schedule on each recipient's local time, set this value to true.

                • QuietTime — (map)

                  The default quiet time for the campaign. Quiet time is a specific time range when a campaign doesn't send messages to endpoints, if all the following conditions are met:

                  • The EndpointDemographic.Timezone property of the endpoint is set to a valid value.

                  • The current time in the endpoint's time zone is later than or equal to the time specified by the QuietTime.Start property for the campaign.

                  • The current time in the endpoint's time zone is earlier than or equal to the time specified by the QuietTime.End property for the campaign.

                  If any of the preceding conditions isn't met, the endpoint will receive messages from the campaign, even if quiet time is enabled.

                  • End — (String)

                    The specific time when quiet time ends. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

                  • Start — (String)

                    The specific time when quiet time begins. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

                • StartTimerequired — (String)

                  The scheduled time when the campaign began or will begin. Valid values are: IMMEDIATE, to start the campaign immediately; or, a specific time in ISO 8601 format.

                • Timezone — (String)

                  The starting UTC offset for the campaign schedule, if the value of the IsLocalTime property is true. Valid values are: UTC, UTC+01, UTC+02, UTC+03, UTC+03:30, UTC+04, UTC+04:30, UTC+05, UTC+05:30, UTC+05:45, UTC+06, UTC+06:30, UTC+07, UTC+08, UTC+09, UTC+09:30, UTC+10, UTC+10:30, UTC+11, UTC+12, UTC+13, UTC-02, UTC-03, UTC-04, UTC-05, UTC-06, UTC-07, UTC-08, UTC-09, UTC-10, and UTC-11.

              • SizePercentrequired — (Integer)

                The allocated percentage of users (segment members) that the treatment is sent to.

              • State — (map)

                The current status of the treatment.

                • CampaignStatus — (String)

                  The current status of the campaign, or the current status of a treatment that belongs to an A/B test campaign.

                  If a campaign uses A/B testing, the campaign has a status of COMPLETED only if all campaign treatments have a status of COMPLETED. If you delete the segment that's associated with a campaign, the campaign fails and has a status of DELETED.

                  Possible values include:
                  • "SCHEDULED"
                  • "EXECUTING"
                  • "PENDING_NEXT_RUN"
                  • "COMPLETED"
                  • "PAUSED"
                  • "DELETED"
                  • "INVALID"
              • TemplateConfiguration — (map)

                The message template to use for the treatment.

                • EmailTemplate — (map)

                  The email template to use for the message.

                  • Name — (String)

                    The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                  • Version — (String)

                    The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                    If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

                • PushTemplate — (map)

                  The push notification template to use for the message.

                  • Name — (String)

                    The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                  • Version — (String)

                    The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                    If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

                • SMSTemplate — (map)

                  The SMS template to use for the message.

                  • Name — (String)

                    The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                  • Version — (String)

                    The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                    If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

                • VoiceTemplate — (map)

                  The voice template to use for the message. This object isn't supported for campaigns.

                  • Name — (String)

                    The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                  • Version — (String)

                    The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                    If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

                • InAppTemplate — (map)

                  The InApp template to use for the message. The InApp template object is not supported for SendMessages.

                  • Name — (String)

                    The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                  • Version — (String)

                    The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                    If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • TreatmentDescription — (String)

                The custom description of the treatment.

              • TreatmentName — (String)

                The custom name of the treatment.

            • ApplicationIdrequired — (String)

              The unique identifier for the application that the campaign applies to.

            • Arnrequired — (String)

              The Amazon Resource Name (ARN) of the campaign.

            • CreationDaterequired — (String)

              The date, in ISO 8601 format, when the campaign was created.

            • CustomDeliveryConfiguration — (map)

              The delivery configuration settings for sending the campaign through a custom channel.

              • DeliveryUrirequired — (String)

                The destination to send the campaign or treatment to. This value can be one of the following:

                • The name or Amazon Resource Name (ARN) of an AWS Lambda function to invoke to handle delivery of the campaign or treatment.

                • The URL for a web application or service that supports HTTPS and can receive the message. The URL has to be a full URL, including the HTTPS protocol.

              • EndpointTypes — (Array<String>)

                The types of endpoints to send the campaign or treatment to. Each valid value maps to a type of channel that you can associate with an endpoint by using the ChannelType property of an endpoint.

            • DefaultState — (map)

              The current status of the campaign's default treatment. This value exists only for campaigns that have more than one treatment.

              • CampaignStatus — (String)

                The current status of the campaign, or the current status of a treatment that belongs to an A/B test campaign.

                If a campaign uses A/B testing, the campaign has a status of COMPLETED only if all campaign treatments have a status of COMPLETED. If you delete the segment that's associated with a campaign, the campaign fails and has a status of DELETED.

                Possible values include:
                • "SCHEDULED"
                • "EXECUTING"
                • "PENDING_NEXT_RUN"
                • "COMPLETED"
                • "PAUSED"
                • "DELETED"
                • "INVALID"
            • Description — (String)

              The custom description of the campaign.

            • HoldoutPercent — (Integer)

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

            • Hook — (map)

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

              • LambdaFunctionName — (String)

                The name or Amazon Resource Name (ARN) of the AWS Lambda function that Amazon Pinpoint invokes to customize a segment for a campaign.

              • Mode — (String)

                The mode that Amazon Pinpoint uses to invoke the AWS Lambda function. Possible values are:

                • FILTER - Invoke the function to customize the segment that's used by a campaign.

                • DELIVERY - (Deprecated) Previously, invoked the function to send a campaign through a custom channel. This functionality is not supported anymore. To send a campaign through a custom channel, use the CustomDeliveryConfiguration and CampaignCustomMessage objects of the campaign.

                Possible values include:
                • "DELIVERY"
                • "FILTER"
              • WebUrl — (String)

                The web URL that Amazon Pinpoint calls to invoke the AWS Lambda function over HTTPS.

            • Idrequired — (String)

              The unique identifier for the campaign.

            • IsPaused — (Boolean)

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

            • LastModifiedDaterequired — (String)

              The date, in ISO 8601 format, when the campaign was last modified.

            • Limits — (map)

              The messaging limits for the campaign.

              • Daily — (Integer)

                The maximum number of messages that a campaign can send to a single endpoint during a 24-hour period. For an application, this value specifies the default limit for the number of messages that campaigns and journeys can send to a single endpoint during a 24-hour period. The maximum value is 100.

              • MaximumDuration — (Integer)

                The maximum amount of time, in seconds, that a campaign can attempt to deliver a message after the scheduled start time for the campaign. The minimum value is 60 seconds.

              • MessagesPerSecond — (Integer)

                The maximum number of messages that a campaign can send each second. For an application, this value specifies the default limit for the number of messages that campaigns can send each second. The minimum value is 1. The maximum value is 20,000.

              • Total — (Integer)

                The maximum number of messages that a campaign can send to a single endpoint during the course of the campaign. If a campaign recurs, this setting applies to all runs of the campaign. The maximum value is 100.

              • Session — (Integer)

                The maximum total number of messages that the campaign can send per user session.

            • MessageConfiguration — (map)

              The message configuration settings for the campaign.

              • ADMMessage — (map)

                The message that the campaign sends through the ADM (Amazon Device Messaging) channel. If specified, this message overrides the default message.

                • Action — (String)

                  The action to occur if a recipient taps the push notification. Valid values are:

                  • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                  • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                  • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                  Possible values include:
                  • "OPEN_APP"
                  • "DEEP_LINK"
                  • "URL"
                • Body — (String)

                  The body of the notification message. The maximum number of characters is 200.

                • ImageIconUrl — (String)

                  The URL of the image to display as the push-notification icon, such as the icon for the app.

                • ImageSmallIconUrl — (String)

                  The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

                • ImageUrl — (String)

                  The URL of an image to display in the push notification.

                • JsonBody — (String)

                  The JSON payload to use for a silent push notification.

                • MediaUrl — (String)

                  The URL of the image or video to display in the push notification.

                • RawContent — (String)

                  The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

                • SilentPush — (Boolean)

                  Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

                • TimeToLive — (Integer)

                  The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                  This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

                • Title — (String)

                  The title to display above the notification message on a recipient's device.

                • Url — (String)

                  The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

              • APNSMessage — (map)

                The message that the campaign sends through the APNs (Apple Push Notification service) channel. If specified, this message overrides the default message.

                • Action — (String)

                  The action to occur if a recipient taps the push notification. Valid values are:

                  • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                  • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                  • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                  Possible values include:
                  • "OPEN_APP"
                  • "DEEP_LINK"
                  • "URL"
                • Body — (String)

                  The body of the notification message. The maximum number of characters is 200.

                • ImageIconUrl — (String)

                  The URL of the image to display as the push-notification icon, such as the icon for the app.

                • ImageSmallIconUrl — (String)

                  The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

                • ImageUrl — (String)

                  The URL of an image to display in the push notification.

                • JsonBody — (String)

                  The JSON payload to use for a silent push notification.

                • MediaUrl — (String)

                  The URL of the image or video to display in the push notification.

                • RawContent — (String)

                  The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

                • SilentPush — (Boolean)

                  Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

                • TimeToLive — (Integer)

                  The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                  This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

                • Title — (String)

                  The title to display above the notification message on a recipient's device.

                • Url — (String)

                  The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

              • BaiduMessage — (map)

                The message that the campaign sends through the Baidu (Baidu Cloud Push) channel. If specified, this message overrides the default message.

                • Action — (String)

                  The action to occur if a recipient taps the push notification. Valid values are:

                  • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                  • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                  • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                  Possible values include:
                  • "OPEN_APP"
                  • "DEEP_LINK"
                  • "URL"
                • Body — (String)

                  The body of the notification message. The maximum number of characters is 200.

                • ImageIconUrl — (String)

                  The URL of the image to display as the push-notification icon, such as the icon for the app.

                • ImageSmallIconUrl — (String)

                  The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

                • ImageUrl — (String)

                  The URL of an image to display in the push notification.

                • JsonBody — (String)

                  The JSON payload to use for a silent push notification.

                • MediaUrl — (String)

                  The URL of the image or video to display in the push notification.

                • RawContent — (String)

                  The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

                • SilentPush — (Boolean)

                  Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

                • TimeToLive — (Integer)

                  The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                  This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

                • Title — (String)

                  The title to display above the notification message on a recipient's device.

                • Url — (String)

                  The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

              • CustomMessage — (map)

                The message that the campaign sends through a custom channel, as specified by the delivery configuration (CustomDeliveryConfiguration) settings for the campaign. If specified, this message overrides the default message.

                • Data — (String)

                  The raw, JSON-formatted string to use as the payload for the message. The maximum size is 5 KB.

              • DefaultMessage — (map)

                The default message that the campaign sends through all the channels that are configured for the campaign.

                • Action — (String)

                  The action to occur if a recipient taps the push notification. Valid values are:

                  • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                  • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                  • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                  Possible values include:
                  • "OPEN_APP"
                  • "DEEP_LINK"
                  • "URL"
                • Body — (String)

                  The body of the notification message. The maximum number of characters is 200.

                • ImageIconUrl — (String)

                  The URL of the image to display as the push-notification icon, such as the icon for the app.

                • ImageSmallIconUrl — (String)

                  The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

                • ImageUrl — (String)

                  The URL of an image to display in the push notification.

                • JsonBody — (String)

                  The JSON payload to use for a silent push notification.

                • MediaUrl — (String)

                  The URL of the image or video to display in the push notification.

                • RawContent — (String)

                  The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

                • SilentPush — (Boolean)

                  Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

                • TimeToLive — (Integer)

                  The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                  This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

                • Title — (String)

                  The title to display above the notification message on a recipient's device.

                • Url — (String)

                  The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

              • EmailMessage — (map)

                The message that the campaign sends through the email channel. If specified, this message overrides the default message.

                • Body — (String)

                  The body of the email for recipients whose email clients don't render HTML content.

                • FromAddress — (String)

                  The verified email address to send the email from. The default address is the FromAddress specified for the email channel for the application.

                • Headers — (Array<map>)

                  The list of MessageHeaders for the email. You can have up to 15 MessageHeaders for each email.

                  • Name — (String)

                    The name of the message header. The header name can contain up to 126 characters.

                  • Value — (String)

                    The value of the message header. The header value can contain up to 870 characters, including the length of any rendered attributes. For example if you add the {CreationDate} attribute, it renders as YYYY-MM-DDTHH:MM:SS.SSSZ and is 24 characters in length.

                • HtmlBody — (String)

                  The body of the email, in HTML format, for recipients whose email clients render HTML content.

                • Title — (String)

                  The subject line, or title, of the email.

              • GCMMessage — (map)

                The message that the campaign sends through the GCM channel, which enables Amazon Pinpoint to send push notifications through the Firebase Cloud Messaging (FCM), formerly Google Cloud Messaging (GCM), service. If specified, this message overrides the default message.

                • Action — (String)

                  The action to occur if a recipient taps the push notification. Valid values are:

                  • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                  • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                  • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                  Possible values include:
                  • "OPEN_APP"
                  • "DEEP_LINK"
                  • "URL"
                • Body — (String)

                  The body of the notification message. The maximum number of characters is 200.

                • ImageIconUrl — (String)

                  The URL of the image to display as the push-notification icon, such as the icon for the app.

                • ImageSmallIconUrl — (String)

                  The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

                • ImageUrl — (String)

                  The URL of an image to display in the push notification.

                • JsonBody — (String)

                  The JSON payload to use for a silent push notification.

                • MediaUrl — (String)

                  The URL of the image or video to display in the push notification.

                • RawContent — (String)

                  The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

                • SilentPush — (Boolean)

                  Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

                • TimeToLive — (Integer)

                  The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                  This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

                • Title — (String)

                  The title to display above the notification message on a recipient's device.

                • Url — (String)

                  The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

              • SMSMessage — (map)

                The message that the campaign sends through the SMS channel. If specified, this message overrides the default message.

                • Body — (String)

                  The body of the SMS message.

                • MessageType — (String)

                  The SMS message type. Valid values are TRANSACTIONAL (for messages that are critical or time-sensitive, such as a one-time passwords) and PROMOTIONAL (for messsages that aren't critical or time-sensitive, such as marketing messages).

                  Possible values include:
                  • "TRANSACTIONAL"
                  • "PROMOTIONAL"
                • OriginationNumber — (String)

                  The long code to send the SMS message from. This value should be one of the dedicated long codes that's assigned to your AWS account. Although it isn't required, we recommend that you specify the long code using an E.164 format to ensure prompt and accurate delivery of the message. For example, +12065550100.

                • SenderId — (String)

                  The sender ID to display on recipients' devices when they receive the SMS message.

                • EntityId — (String)

                  The entity ID or Principal Entity (PE) id received from the regulatory body for sending SMS in your country.

                • TemplateId — (String)

                  The template ID received from the regulatory body for sending SMS in your country.

              • InAppMessage — (map)

                The in-app message configuration.

                • Body — (String)

                  The message body of the notification, the email body or the text message.

                • Content — (Array<map>)

                  In-app message content.

                  • BackgroundColor — (String)

                    The background color for the message.

                  • BodyConfig — (map)

                    The configuration for the message body.

                    • Alignmentrequired — (String)

                      The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

                      Possible values include:
                      • "LEFT"
                      • "CENTER"
                      • "RIGHT"
                    • Bodyrequired — (String)

                      Message Body.

                    • TextColorrequired — (String)

                      The text color.

                  • HeaderConfig — (map)

                    The configuration for the message header.

                    • Alignmentrequired — (String)

                      The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

                      Possible values include:
                      • "LEFT"
                      • "CENTER"
                      • "RIGHT"
                    • Headerrequired — (String)

                      Message Header.

                    • TextColorrequired — (String)

                      The text color.

                  • ImageUrl — (String)

                    The image url for the background of message.

                  • PrimaryBtn — (map)

                    The first button inside the message.

                    • Android — (map)

                      Default button content.

                      • ButtonActionrequired — (String)

                        Action triggered by the button.

                        Possible values include:
                        • "LINK"
                        • "DEEP_LINK"
                        • "CLOSE"
                      • Link — (String)

                        Button destination.

                    • DefaultConfig — (map)

                      Default button content.

                      • BackgroundColor — (String)

                        The background color of the button.

                      • BorderRadius — (Integer)

                        The border radius of the button.

                      • ButtonActionrequired — (String)

                        Action triggered by the button.

                        Possible values include:
                        • "LINK"
                        • "DEEP_LINK"
                        • "CLOSE"
                      • Link — (String)

                        Button destination.

                      • Textrequired — (String)

                        Button text.

                      • TextColor — (String)

                        The text color of the button.

                    • IOS — (map)

                      Default button content.

                      • ButtonActionrequired — (String)

                        Action triggered by the button.

                        Possible values include:
                        • "LINK"
                        • "DEEP_LINK"
                        • "CLOSE"
                      • Link — (String)

                        Button destination.

                    • Web — (map)

                      Default button content.

                      • ButtonActionrequired — (String)

                        Action triggered by the button.

                        Possible values include:
                        • "LINK"
                        • "DEEP_LINK"
                        • "CLOSE"
                      • Link — (String)

                        Button destination.

                  • SecondaryBtn — (map)

                    The second button inside message.

                    • Android — (map)

                      Default button content.

                      • ButtonActionrequired — (String)

                        Action triggered by the button.

                        Possible values include:
                        • "LINK"
                        • "DEEP_LINK"
                        • "CLOSE"
                      • Link — (String)

                        Button destination.

                    • DefaultConfig — (map)

                      Default button content.

                      • BackgroundColor — (String)

                        The background color of the button.

                      • BorderRadius — (Integer)

                        The border radius of the button.

                      • ButtonActionrequired — (String)

                        Action triggered by the button.

                        Possible values include:
                        • "LINK"
                        • "DEEP_LINK"
                        • "CLOSE"
                      • Link — (String)

                        Button destination.

                      • Textrequired — (String)

                        Button text.

                      • TextColor — (String)

                        The text color of the button.

                    • IOS — (map)

                      Default button content.

                      • ButtonActionrequired — (String)

                        Action triggered by the button.

                        Possible values include:
                        • "LINK"
                        • "DEEP_LINK"
                        • "CLOSE"
                      • Link — (String)

                        Button destination.

                    • Web — (map)

                      Default button content.

                      • ButtonActionrequired — (String)

                        Action triggered by the button.

                        Possible values include:
                        • "LINK"
                        • "DEEP_LINK"
                        • "CLOSE"
                      • Link — (String)

                        Button destination.

                • CustomConfig — (map<String>)

                  Custom config to be sent to client.

                • Layout — (String)

                  In-app message layout.

                  Possible values include:
                  • "BOTTOM_BANNER"
                  • "TOP_BANNER"
                  • "OVERLAYS"
                  • "MOBILE_FEED"
                  • "MIDDLE_BANNER"
                  • "CAROUSEL"
            • Name — (String)

              The name of the campaign.

            • Schedule — (map)

              The schedule settings for the campaign.

              • EndTime — (String)

                The scheduled time, in ISO 8601 format, when the campaign ended or will end.

              • EventFilter — (map)

                The type of event that causes the campaign to be sent, if the value of the Frequency property is EVENT.

                • Dimensionsrequired — (map)

                  The dimension settings of the event filter for the campaign.

                  • Attributes — (map<map>)

                    One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                    • AttributeType — (String)

                      The type of segment dimension to use. Valid values are:

                      • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                      • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                      • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                      • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                      • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                      • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                      • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                      • Possible values include:
                        • "INCLUSIVE"
                        • "EXCLUSIVE"
                        • "CONTAINS"
                        • "BEFORE"
                        • "AFTER"
                        • "ON"
                        • "BETWEEN"
                      • Valuesrequired — (Array<String>)

                        The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                    • EventType — (map)

                      The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                      • DimensionType — (String)

                        The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                        Possible values include:
                        • "INCLUSIVE"
                        • "EXCLUSIVE"
                      • Valuesrequired — (Array<String>)

                        The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                    • Metrics — (map<map>)

                      One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                      • ComparisonOperatorrequired — (String)

                        The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                      • Valuerequired — (Float)

                        The value to compare.

                  • FilterTyperequired — (String)

                    The type of event that causes the campaign to be sent. Valid values are: SYSTEM, sends the campaign when a system event occurs; and, ENDPOINT, sends the campaign when an endpoint event (Events resource) occurs.

                    Possible values include:
                    • "SYSTEM"
                    • "ENDPOINT"
                • Frequency — (String)

                  Specifies how often the campaign is sent or whether the campaign is sent in response to a specific event.

                  Possible values include:
                  • "ONCE"
                  • "HOURLY"
                  • "DAILY"
                  • "WEEKLY"
                  • "MONTHLY"
                  • "EVENT"
                  • "IN_APP_EVENT"
                • IsLocalTime — (Boolean)

                  Specifies whether the start and end times for the campaign schedule use each recipient's local time. To base the schedule on each recipient's local time, set this value to true.

                • QuietTime — (map)

                  The default quiet time for the campaign. Quiet time is a specific time range when a campaign doesn't send messages to endpoints, if all the following conditions are met:

                  • The EndpointDemographic.Timezone property of the endpoint is set to a valid value.

                  • The current time in the endpoint's time zone is later than or equal to the time specified by the QuietTime.Start property for the campaign.

                  • The current time in the endpoint's time zone is earlier than or equal to the time specified by the QuietTime.End property for the campaign.

                  If any of the preceding conditions isn't met, the endpoint will receive messages from the campaign, even if quiet time is enabled.

                  • End — (String)

                    The specific time when quiet time ends. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

                  • Start — (String)

                    The specific time when quiet time begins. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

                • StartTimerequired — (String)

                  The scheduled time when the campaign began or will begin. Valid values are: IMMEDIATE, to start the campaign immediately; or, a specific time in ISO 8601 format.

                • Timezone — (String)

                  The starting UTC offset for the campaign schedule, if the value of the IsLocalTime property is true. Valid values are: UTC, UTC+01, UTC+02, UTC+03, UTC+03:30, UTC+04, UTC+04:30, UTC+05, UTC+05:30, UTC+05:45, UTC+06, UTC+06:30, UTC+07, UTC+08, UTC+09, UTC+09:30, UTC+10, UTC+10:30, UTC+11, UTC+12, UTC+13, UTC-02, UTC-03, UTC-04, UTC-05, UTC-06, UTC-07, UTC-08, UTC-09, UTC-10, and UTC-11.

              • SegmentIdrequired — (String)

                The unique identifier for the segment that's associated with the campaign.

              • SegmentVersionrequired — (Integer)

                The version number of the segment that's associated with the campaign.

              • State — (map)

                The current status of the campaign.

                • CampaignStatus — (String)

                  The current status of the campaign, or the current status of a treatment that belongs to an A/B test campaign.

                  If a campaign uses A/B testing, the campaign has a status of COMPLETED only if all campaign treatments have a status of COMPLETED. If you delete the segment that's associated with a campaign, the campaign fails and has a status of DELETED.

                  Possible values include:
                  • "SCHEDULED"
                  • "EXECUTING"
                  • "PENDING_NEXT_RUN"
                  • "COMPLETED"
                  • "PAUSED"
                  • "DELETED"
                  • "INVALID"
              • tags — (map<String>)

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

              • TemplateConfiguration — (map)

                The message template that’s used for the campaign.

                • EmailTemplate — (map)

                  The email template to use for the message.

                  • Name — (String)

                    The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                  • Version — (String)

                    The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                    If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

                • PushTemplate — (map)

                  The push notification template to use for the message.

                  • Name — (String)

                    The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                  • Version — (String)

                    The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                    If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

                • SMSTemplate — (map)

                  The SMS template to use for the message.

                  • Name — (String)

                    The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                  • Version — (String)

                    The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                    If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

                • VoiceTemplate — (map)

                  The voice template to use for the message. This object isn't supported for campaigns.

                  • Name — (String)

                    The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                  • Version — (String)

                    The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                    If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

                • InAppTemplate — (map)

                  The InApp template to use for the message. The InApp template object is not supported for SendMessages.

                  • Name — (String)

                    The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                  • Version — (String)

                    The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                    If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • TreatmentDescription — (String)

                The custom description of the default treatment for the campaign.

              • TreatmentName — (String)

                The 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.

              • Version — (Integer)

                The version number of the campaign.

              • Priority — (Integer)

                Defines the priority of the campaign, used to decide the order of messages displayed to user if there are multiple messages scheduled to be displayed at the same moment.

            • NextToken — (String)

              The string to use in a subsequent request to get the next page of results in a paginated response. This value is null if there are no additional pages.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getCampaignVersion(params = {}, callback) ⇒ AWS.Request

Retrieves information about the status, configuration, and other settings for a specific version of a campaign.

Service Reference:

Examples:

Calling the getCampaignVersion operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  CampaignId: 'STRING_VALUE', /* required */
  Version: 'STRING_VALUE' /* required */
};
pinpoint.getCampaignVersion(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • CampaignId — (String)

      The unique identifier for the campaign.

    • Version — (String)

      The unique version number (Version property) for the campaign version.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • CampaignResponse — (map)

        Provides information about the status, configuration, and other settings for a campaign.

        • AdditionalTreatments — (Array<map>)

          An array of responses, one for each treatment that you defined for the campaign, in addition to the default treatment.

          • CustomDeliveryConfiguration — (map)

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

            • DeliveryUrirequired — (String)

              The destination to send the campaign or treatment to. This value can be one of the following:

              • The name or Amazon Resource Name (ARN) of an AWS Lambda function to invoke to handle delivery of the campaign or treatment.

              • The URL for a web application or service that supports HTTPS and can receive the message. The URL has to be a full URL, including the HTTPS protocol.

            • EndpointTypes — (Array<String>)

              The types of endpoints to send the campaign or treatment to. Each valid value maps to a type of channel that you can associate with an endpoint by using the ChannelType property of an endpoint.

          • Idrequired — (String)

            The unique identifier for the treatment.

          • MessageConfiguration — (map)

            The message configuration settings for the treatment.

            • ADMMessage — (map)

              The message that the campaign sends through the ADM (Amazon Device Messaging) channel. If specified, this message overrides the default message.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • APNSMessage — (map)

              The message that the campaign sends through the APNs (Apple Push Notification service) channel. If specified, this message overrides the default message.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • BaiduMessage — (map)

              The message that the campaign sends through the Baidu (Baidu Cloud Push) channel. If specified, this message overrides the default message.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • CustomMessage — (map)

              The message that the campaign sends through a custom channel, as specified by the delivery configuration (CustomDeliveryConfiguration) settings for the campaign. If specified, this message overrides the default message.

              • Data — (String)

                The raw, JSON-formatted string to use as the payload for the message. The maximum size is 5 KB.

            • DefaultMessage — (map)

              The default message that the campaign sends through all the channels that are configured for the campaign.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • EmailMessage — (map)

              The message that the campaign sends through the email channel. If specified, this message overrides the default message.

              • Body — (String)

                The body of the email for recipients whose email clients don't render HTML content.

              • FromAddress — (String)

                The verified email address to send the email from. The default address is the FromAddress specified for the email channel for the application.

              • Headers — (Array<map>)

                The list of MessageHeaders for the email. You can have up to 15 MessageHeaders for each email.

                • Name — (String)

                  The name of the message header. The header name can contain up to 126 characters.

                • Value — (String)

                  The value of the message header. The header value can contain up to 870 characters, including the length of any rendered attributes. For example if you add the {CreationDate} attribute, it renders as YYYY-MM-DDTHH:MM:SS.SSSZ and is 24 characters in length.

              • HtmlBody — (String)

                The body of the email, in HTML format, for recipients whose email clients render HTML content.

              • Title — (String)

                The subject line, or title, of the email.

            • GCMMessage — (map)

              The message that the campaign sends through the GCM channel, which enables Amazon Pinpoint to send push notifications through the Firebase Cloud Messaging (FCM), formerly Google Cloud Messaging (GCM), service. If specified, this message overrides the default message.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • SMSMessage — (map)

              The message that the campaign sends through the SMS channel. If specified, this message overrides the default message.

              • Body — (String)

                The body of the SMS message.

              • MessageType — (String)

                The SMS message type. Valid values are TRANSACTIONAL (for messages that are critical or time-sensitive, such as a one-time passwords) and PROMOTIONAL (for messsages that aren't critical or time-sensitive, such as marketing messages).

                Possible values include:
                • "TRANSACTIONAL"
                • "PROMOTIONAL"
              • OriginationNumber — (String)

                The long code to send the SMS message from. This value should be one of the dedicated long codes that's assigned to your AWS account. Although it isn't required, we recommend that you specify the long code using an E.164 format to ensure prompt and accurate delivery of the message. For example, +12065550100.

              • SenderId — (String)

                The sender ID to display on recipients' devices when they receive the SMS message.

              • EntityId — (String)

                The entity ID or Principal Entity (PE) id received from the regulatory body for sending SMS in your country.

              • TemplateId — (String)

                The template ID received from the regulatory body for sending SMS in your country.

            • InAppMessage — (map)

              The in-app message configuration.

              • Body — (String)

                The message body of the notification, the email body or the text message.

              • Content — (Array<map>)

                In-app message content.

                • BackgroundColor — (String)

                  The background color for the message.

                • BodyConfig — (map)

                  The configuration for the message body.

                  • Alignmentrequired — (String)

                    The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

                    Possible values include:
                    • "LEFT"
                    • "CENTER"
                    • "RIGHT"
                  • Bodyrequired — (String)

                    Message Body.

                  • TextColorrequired — (String)

                    The text color.

                • HeaderConfig — (map)

                  The configuration for the message header.

                  • Alignmentrequired — (String)

                    The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

                    Possible values include:
                    • "LEFT"
                    • "CENTER"
                    • "RIGHT"
                  • Headerrequired — (String)

                    Message Header.

                  • TextColorrequired — (String)

                    The text color.

                • ImageUrl — (String)

                  The image url for the background of message.

                • PrimaryBtn — (map)

                  The first button inside the message.

                  • Android — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                  • DefaultConfig — (map)

                    Default button content.

                    • BackgroundColor — (String)

                      The background color of the button.

                    • BorderRadius — (Integer)

                      The border radius of the button.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                    • Textrequired — (String)

                      Button text.

                    • TextColor — (String)

                      The text color of the button.

                  • IOS — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                  • Web — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                • SecondaryBtn — (map)

                  The second button inside message.

                  • Android — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                  • DefaultConfig — (map)

                    Default button content.

                    • BackgroundColor — (String)

                      The background color of the button.

                    • BorderRadius — (Integer)

                      The border radius of the button.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                    • Textrequired — (String)

                      Button text.

                    • TextColor — (String)

                      The text color of the button.

                  • IOS — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                  • Web — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

              • CustomConfig — (map<String>)

                Custom config to be sent to client.

              • Layout — (String)

                In-app message layout.

                Possible values include:
                • "BOTTOM_BANNER"
                • "TOP_BANNER"
                • "OVERLAYS"
                • "MOBILE_FEED"
                • "MIDDLE_BANNER"
                • "CAROUSEL"
          • Schedule — (map)

            The schedule settings for the treatment.

            • EndTime — (String)

              The scheduled time, in ISO 8601 format, when the campaign ended or will end.

            • EventFilter — (map)

              The type of event that causes the campaign to be sent, if the value of the Frequency property is EVENT.

              • Dimensionsrequired — (map)

                The dimension settings of the event filter for the campaign.

                • Attributes — (map<map>)

                  One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                  • AttributeType — (String)

                    The type of segment dimension to use. Valid values are:

                    • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                    • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                    • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                    • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                    • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                    • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                    • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                    • Possible values include:
                      • "INCLUSIVE"
                      • "EXCLUSIVE"
                      • "CONTAINS"
                      • "BEFORE"
                      • "AFTER"
                      • "ON"
                      • "BETWEEN"
                    • Valuesrequired — (Array<String>)

                      The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                  • EventType — (map)

                    The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                    • DimensionType — (String)

                      The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                      Possible values include:
                      • "INCLUSIVE"
                      • "EXCLUSIVE"
                    • Valuesrequired — (Array<String>)

                      The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                  • Metrics — (map<map>)

                    One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                    • ComparisonOperatorrequired — (String)

                      The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                    • Valuerequired — (Float)

                      The value to compare.

                • FilterTyperequired — (String)

                  The type of event that causes the campaign to be sent. Valid values are: SYSTEM, sends the campaign when a system event occurs; and, ENDPOINT, sends the campaign when an endpoint event (Events resource) occurs.

                  Possible values include:
                  • "SYSTEM"
                  • "ENDPOINT"
              • Frequency — (String)

                Specifies how often the campaign is sent or whether the campaign is sent in response to a specific event.

                Possible values include:
                • "ONCE"
                • "HOURLY"
                • "DAILY"
                • "WEEKLY"
                • "MONTHLY"
                • "EVENT"
                • "IN_APP_EVENT"
              • IsLocalTime — (Boolean)

                Specifies whether the start and end times for the campaign schedule use each recipient's local time. To base the schedule on each recipient's local time, set this value to true.

              • QuietTime — (map)

                The default quiet time for the campaign. Quiet time is a specific time range when a campaign doesn't send messages to endpoints, if all the following conditions are met:

                • The EndpointDemographic.Timezone property of the endpoint is set to a valid value.

                • The current time in the endpoint's time zone is later than or equal to the time specified by the QuietTime.Start property for the campaign.

                • The current time in the endpoint's time zone is earlier than or equal to the time specified by the QuietTime.End property for the campaign.

                If any of the preceding conditions isn't met, the endpoint will receive messages from the campaign, even if quiet time is enabled.

                • End — (String)

                  The specific time when quiet time ends. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

                • Start — (String)

                  The specific time when quiet time begins. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

              • StartTimerequired — (String)

                The scheduled time when the campaign began or will begin. Valid values are: IMMEDIATE, to start the campaign immediately; or, a specific time in ISO 8601 format.

              • Timezone — (String)

                The starting UTC offset for the campaign schedule, if the value of the IsLocalTime property is true. Valid values are: UTC, UTC+01, UTC+02, UTC+03, UTC+03:30, UTC+04, UTC+04:30, UTC+05, UTC+05:30, UTC+05:45, UTC+06, UTC+06:30, UTC+07, UTC+08, UTC+09, UTC+09:30, UTC+10, UTC+10:30, UTC+11, UTC+12, UTC+13, UTC-02, UTC-03, UTC-04, UTC-05, UTC-06, UTC-07, UTC-08, UTC-09, UTC-10, and UTC-11.

            • SizePercentrequired — (Integer)

              The allocated percentage of users (segment members) that the treatment is sent to.

            • State — (map)

              The current status of the treatment.

              • CampaignStatus — (String)

                The current status of the campaign, or the current status of a treatment that belongs to an A/B test campaign.

                If a campaign uses A/B testing, the campaign has a status of COMPLETED only if all campaign treatments have a status of COMPLETED. If you delete the segment that's associated with a campaign, the campaign fails and has a status of DELETED.

                Possible values include:
                • "SCHEDULED"
                • "EXECUTING"
                • "PENDING_NEXT_RUN"
                • "COMPLETED"
                • "PAUSED"
                • "DELETED"
                • "INVALID"
            • TemplateConfiguration — (map)

              The message template to use for the treatment.

              • EmailTemplate — (map)

                The email template to use for the message.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • PushTemplate — (map)

                The push notification template to use for the message.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • SMSTemplate — (map)

                The SMS template to use for the message.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • VoiceTemplate — (map)

                The voice template to use for the message. This object isn't supported for campaigns.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • InAppTemplate — (map)

                The InApp template to use for the message. The InApp template object is not supported for SendMessages.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

            • TreatmentDescription — (String)

              The custom description of the treatment.

            • TreatmentName — (String)

              The custom name of the treatment.

          • ApplicationIdrequired — (String)

            The unique identifier for the application that the campaign applies to.

          • Arnrequired — (String)

            The Amazon Resource Name (ARN) of the campaign.

          • CreationDaterequired — (String)

            The date, in ISO 8601 format, when the campaign was created.

          • CustomDeliveryConfiguration — (map)

            The delivery configuration settings for sending the campaign through a custom channel.

            • DeliveryUrirequired — (String)

              The destination to send the campaign or treatment to. This value can be one of the following:

              • The name or Amazon Resource Name (ARN) of an AWS Lambda function to invoke to handle delivery of the campaign or treatment.

              • The URL for a web application or service that supports HTTPS and can receive the message. The URL has to be a full URL, including the HTTPS protocol.

            • EndpointTypes — (Array<String>)

              The types of endpoints to send the campaign or treatment to. Each valid value maps to a type of channel that you can associate with an endpoint by using the ChannelType property of an endpoint.

          • DefaultState — (map)

            The current status of the campaign's default treatment. This value exists only for campaigns that have more than one treatment.

            • CampaignStatus — (String)

              The current status of the campaign, or the current status of a treatment that belongs to an A/B test campaign.

              If a campaign uses A/B testing, the campaign has a status of COMPLETED only if all campaign treatments have a status of COMPLETED. If you delete the segment that's associated with a campaign, the campaign fails and has a status of DELETED.

              Possible values include:
              • "SCHEDULED"
              • "EXECUTING"
              • "PENDING_NEXT_RUN"
              • "COMPLETED"
              • "PAUSED"
              • "DELETED"
              • "INVALID"
          • Description — (String)

            The custom description of the campaign.

          • HoldoutPercent — (Integer)

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

          • Hook — (map)

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

            • LambdaFunctionName — (String)

              The name or Amazon Resource Name (ARN) of the AWS Lambda function that Amazon Pinpoint invokes to customize a segment for a campaign.

            • Mode — (String)

              The mode that Amazon Pinpoint uses to invoke the AWS Lambda function. Possible values are:

              • FILTER - Invoke the function to customize the segment that's used by a campaign.

              • DELIVERY - (Deprecated) Previously, invoked the function to send a campaign through a custom channel. This functionality is not supported anymore. To send a campaign through a custom channel, use the CustomDeliveryConfiguration and CampaignCustomMessage objects of the campaign.

              Possible values include:
              • "DELIVERY"
              • "FILTER"
            • WebUrl — (String)

              The web URL that Amazon Pinpoint calls to invoke the AWS Lambda function over HTTPS.

          • Idrequired — (String)

            The unique identifier for the campaign.

          • IsPaused — (Boolean)

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

          • LastModifiedDaterequired — (String)

            The date, in ISO 8601 format, when the campaign was last modified.

          • Limits — (map)

            The messaging limits for the campaign.

            • Daily — (Integer)

              The maximum number of messages that a campaign can send to a single endpoint during a 24-hour period. For an application, this value specifies the default limit for the number of messages that campaigns and journeys can send to a single endpoint during a 24-hour period. The maximum value is 100.

            • MaximumDuration — (Integer)

              The maximum amount of time, in seconds, that a campaign can attempt to deliver a message after the scheduled start time for the campaign. The minimum value is 60 seconds.

            • MessagesPerSecond — (Integer)

              The maximum number of messages that a campaign can send each second. For an application, this value specifies the default limit for the number of messages that campaigns can send each second. The minimum value is 1. The maximum value is 20,000.

            • Total — (Integer)

              The maximum number of messages that a campaign can send to a single endpoint during the course of the campaign. If a campaign recurs, this setting applies to all runs of the campaign. The maximum value is 100.

            • Session — (Integer)

              The maximum total number of messages that the campaign can send per user session.

          • MessageConfiguration — (map)

            The message configuration settings for the campaign.

            • ADMMessage — (map)

              The message that the campaign sends through the ADM (Amazon Device Messaging) channel. If specified, this message overrides the default message.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • APNSMessage — (map)

              The message that the campaign sends through the APNs (Apple Push Notification service) channel. If specified, this message overrides the default message.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • BaiduMessage — (map)

              The message that the campaign sends through the Baidu (Baidu Cloud Push) channel. If specified, this message overrides the default message.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • CustomMessage — (map)

              The message that the campaign sends through a custom channel, as specified by the delivery configuration (CustomDeliveryConfiguration) settings for the campaign. If specified, this message overrides the default message.

              • Data — (String)

                The raw, JSON-formatted string to use as the payload for the message. The maximum size is 5 KB.

            • DefaultMessage — (map)

              The default message that the campaign sends through all the channels that are configured for the campaign.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • EmailMessage — (map)

              The message that the campaign sends through the email channel. If specified, this message overrides the default message.

              • Body — (String)

                The body of the email for recipients whose email clients don't render HTML content.

              • FromAddress — (String)

                The verified email address to send the email from. The default address is the FromAddress specified for the email channel for the application.

              • Headers — (Array<map>)

                The list of MessageHeaders for the email. You can have up to 15 MessageHeaders for each email.

                • Name — (String)

                  The name of the message header. The header name can contain up to 126 characters.

                • Value — (String)

                  The value of the message header. The header value can contain up to 870 characters, including the length of any rendered attributes. For example if you add the {CreationDate} attribute, it renders as YYYY-MM-DDTHH:MM:SS.SSSZ and is 24 characters in length.

              • HtmlBody — (String)

                The body of the email, in HTML format, for recipients whose email clients render HTML content.

              • Title — (String)

                The subject line, or title, of the email.

            • GCMMessage — (map)

              The message that the campaign sends through the GCM channel, which enables Amazon Pinpoint to send push notifications through the Firebase Cloud Messaging (FCM), formerly Google Cloud Messaging (GCM), service. If specified, this message overrides the default message.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • SMSMessage — (map)

              The message that the campaign sends through the SMS channel. If specified, this message overrides the default message.

              • Body — (String)

                The body of the SMS message.

              • MessageType — (String)

                The SMS message type. Valid values are TRANSACTIONAL (for messages that are critical or time-sensitive, such as a one-time passwords) and PROMOTIONAL (for messsages that aren't critical or time-sensitive, such as marketing messages).

                Possible values include:
                • "TRANSACTIONAL"
                • "PROMOTIONAL"
              • OriginationNumber — (String)

                The long code to send the SMS message from. This value should be one of the dedicated long codes that's assigned to your AWS account. Although it isn't required, we recommend that you specify the long code using an E.164 format to ensure prompt and accurate delivery of the message. For example, +12065550100.

              • SenderId — (String)

                The sender ID to display on recipients' devices when they receive the SMS message.

              • EntityId — (String)

                The entity ID or Principal Entity (PE) id received from the regulatory body for sending SMS in your country.

              • TemplateId — (String)

                The template ID received from the regulatory body for sending SMS in your country.

            • InAppMessage — (map)

              The in-app message configuration.

              • Body — (String)

                The message body of the notification, the email body or the text message.

              • Content — (Array<map>)

                In-app message content.

                • BackgroundColor — (String)

                  The background color for the message.

                • BodyConfig — (map)

                  The configuration for the message body.

                  • Alignmentrequired — (String)

                    The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

                    Possible values include:
                    • "LEFT"
                    • "CENTER"
                    • "RIGHT"
                  • Bodyrequired — (String)

                    Message Body.

                  • TextColorrequired — (String)

                    The text color.

                • HeaderConfig — (map)

                  The configuration for the message header.

                  • Alignmentrequired — (String)

                    The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

                    Possible values include:
                    • "LEFT"
                    • "CENTER"
                    • "RIGHT"
                  • Headerrequired — (String)

                    Message Header.

                  • TextColorrequired — (String)

                    The text color.

                • ImageUrl — (String)

                  The image url for the background of message.

                • PrimaryBtn — (map)

                  The first button inside the message.

                  • Android — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                  • DefaultConfig — (map)

                    Default button content.

                    • BackgroundColor — (String)

                      The background color of the button.

                    • BorderRadius — (Integer)

                      The border radius of the button.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                    • Textrequired — (String)

                      Button text.

                    • TextColor — (String)

                      The text color of the button.

                  • IOS — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                  • Web — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                • SecondaryBtn — (map)

                  The second button inside message.

                  • Android — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                  • DefaultConfig — (map)

                    Default button content.

                    • BackgroundColor — (String)

                      The background color of the button.

                    • BorderRadius — (Integer)

                      The border radius of the button.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                    • Textrequired — (String)

                      Button text.

                    • TextColor — (String)

                      The text color of the button.

                  • IOS — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                  • Web — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

              • CustomConfig — (map<String>)

                Custom config to be sent to client.

              • Layout — (String)

                In-app message layout.

                Possible values include:
                • "BOTTOM_BANNER"
                • "TOP_BANNER"
                • "OVERLAYS"
                • "MOBILE_FEED"
                • "MIDDLE_BANNER"
                • "CAROUSEL"
          • Name — (String)

            The name of the campaign.

          • Schedule — (map)

            The schedule settings for the campaign.

            • EndTime — (String)

              The scheduled time, in ISO 8601 format, when the campaign ended or will end.

            • EventFilter — (map)

              The type of event that causes the campaign to be sent, if the value of the Frequency property is EVENT.

              • Dimensionsrequired — (map)

                The dimension settings of the event filter for the campaign.

                • Attributes — (map<map>)

                  One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                  • AttributeType — (String)

                    The type of segment dimension to use. Valid values are:

                    • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                    • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                    • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                    • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                    • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                    • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                    • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                    • Possible values include:
                      • "INCLUSIVE"
                      • "EXCLUSIVE"
                      • "CONTAINS"
                      • "BEFORE"
                      • "AFTER"
                      • "ON"
                      • "BETWEEN"
                    • Valuesrequired — (Array<String>)

                      The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                  • EventType — (map)

                    The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                    • DimensionType — (String)

                      The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                      Possible values include:
                      • "INCLUSIVE"
                      • "EXCLUSIVE"
                    • Valuesrequired — (Array<String>)

                      The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                  • Metrics — (map<map>)

                    One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                    • ComparisonOperatorrequired — (String)

                      The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                    • Valuerequired — (Float)

                      The value to compare.

                • FilterTyperequired — (String)

                  The type of event that causes the campaign to be sent. Valid values are: SYSTEM, sends the campaign when a system event occurs; and, ENDPOINT, sends the campaign when an endpoint event (Events resource) occurs.

                  Possible values include:
                  • "SYSTEM"
                  • "ENDPOINT"
              • Frequency — (String)

                Specifies how often the campaign is sent or whether the campaign is sent in response to a specific event.

                Possible values include:
                • "ONCE"
                • "HOURLY"
                • "DAILY"
                • "WEEKLY"
                • "MONTHLY"
                • "EVENT"
                • "IN_APP_EVENT"
              • IsLocalTime — (Boolean)

                Specifies whether the start and end times for the campaign schedule use each recipient's local time. To base the schedule on each recipient's local time, set this value to true.

              • QuietTime — (map)

                The default quiet time for the campaign. Quiet time is a specific time range when a campaign doesn't send messages to endpoints, if all the following conditions are met:

                • The EndpointDemographic.Timezone property of the endpoint is set to a valid value.

                • The current time in the endpoint's time zone is later than or equal to the time specified by the QuietTime.Start property for the campaign.

                • The current time in the endpoint's time zone is earlier than or equal to the time specified by the QuietTime.End property for the campaign.

                If any of the preceding conditions isn't met, the endpoint will receive messages from the campaign, even if quiet time is enabled.

                • End — (String)

                  The specific time when quiet time ends. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

                • Start — (String)

                  The specific time when quiet time begins. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

              • StartTimerequired — (String)

                The scheduled time when the campaign began or will begin. Valid values are: IMMEDIATE, to start the campaign immediately; or, a specific time in ISO 8601 format.

              • Timezone — (String)

                The starting UTC offset for the campaign schedule, if the value of the IsLocalTime property is true. Valid values are: UTC, UTC+01, UTC+02, UTC+03, UTC+03:30, UTC+04, UTC+04:30, UTC+05, UTC+05:30, UTC+05:45, UTC+06, UTC+06:30, UTC+07, UTC+08, UTC+09, UTC+09:30, UTC+10, UTC+10:30, UTC+11, UTC+12, UTC+13, UTC-02, UTC-03, UTC-04, UTC-05, UTC-06, UTC-07, UTC-08, UTC-09, UTC-10, and UTC-11.

            • SegmentIdrequired — (String)

              The unique identifier for the segment that's associated with the campaign.

            • SegmentVersionrequired — (Integer)

              The version number of the segment that's associated with the campaign.

            • State — (map)

              The current status of the campaign.

              • CampaignStatus — (String)

                The current status of the campaign, or the current status of a treatment that belongs to an A/B test campaign.

                If a campaign uses A/B testing, the campaign has a status of COMPLETED only if all campaign treatments have a status of COMPLETED. If you delete the segment that's associated with a campaign, the campaign fails and has a status of DELETED.

                Possible values include:
                • "SCHEDULED"
                • "EXECUTING"
                • "PENDING_NEXT_RUN"
                • "COMPLETED"
                • "PAUSED"
                • "DELETED"
                • "INVALID"
            • tags — (map<String>)

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

            • TemplateConfiguration — (map)

              The message template that’s used for the campaign.

              • EmailTemplate — (map)

                The email template to use for the message.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • PushTemplate — (map)

                The push notification template to use for the message.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • SMSTemplate — (map)

                The SMS template to use for the message.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • VoiceTemplate — (map)

                The voice template to use for the message. This object isn't supported for campaigns.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • InAppTemplate — (map)

                The InApp template to use for the message. The InApp template object is not supported for SendMessages.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

            • TreatmentDescription — (String)

              The custom description of the default treatment for the campaign.

            • TreatmentName — (String)

              The 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.

            • Version — (Integer)

              The version number of the campaign.

            • Priority — (Integer)

              Defines the priority of the campaign, used to decide the order of messages displayed to user if there are multiple messages scheduled to be displayed at the same moment.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getCampaignVersions(params = {}, callback) ⇒ AWS.Request

Retrieves information about the status, configuration, and other settings for all versions of a campaign.

Service Reference:

Examples:

Calling the getCampaignVersions operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  CampaignId: 'STRING_VALUE', /* required */
  PageSize: 'STRING_VALUE',
  Token: 'STRING_VALUE'
};
pinpoint.getCampaignVersions(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • CampaignId — (String)

      The unique identifier for the campaign.

    • PageSize — (String)

      The maximum number of items to include in each page of a paginated response. This parameter is not supported for application, campaign, and journey metrics.

    • Token — (String)

      The NextToken string that specifies which page of results to return in a paginated response.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • CampaignsResponse — (map)

        Provides information about the configuration and other settings for all the campaigns that are associated with an application.

        • Itemrequired — (Array<map>)

          An array of responses, one for each campaign that's associated with the application.

          • AdditionalTreatments — (Array<map>)

            An array of responses, one for each treatment that you defined for the campaign, in addition to the default treatment.

            • CustomDeliveryConfiguration — (map)

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

              • DeliveryUrirequired — (String)

                The destination to send the campaign or treatment to. This value can be one of the following:

                • The name or Amazon Resource Name (ARN) of an AWS Lambda function to invoke to handle delivery of the campaign or treatment.

                • The URL for a web application or service that supports HTTPS and can receive the message. The URL has to be a full URL, including the HTTPS protocol.

              • EndpointTypes — (Array<String>)

                The types of endpoints to send the campaign or treatment to. Each valid value maps to a type of channel that you can associate with an endpoint by using the ChannelType property of an endpoint.

            • Idrequired — (String)

              The unique identifier for the treatment.

            • MessageConfiguration — (map)

              The message configuration settings for the treatment.

              • ADMMessage — (map)

                The message that the campaign sends through the ADM (Amazon Device Messaging) channel. If specified, this message overrides the default message.

                • Action — (String)

                  The action to occur if a recipient taps the push notification. Valid values are:

                  • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                  • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                  • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                  Possible values include:
                  • "OPEN_APP"
                  • "DEEP_LINK"
                  • "URL"
                • Body — (String)

                  The body of the notification message. The maximum number of characters is 200.

                • ImageIconUrl — (String)

                  The URL of the image to display as the push-notification icon, such as the icon for the app.

                • ImageSmallIconUrl — (String)

                  The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

                • ImageUrl — (String)

                  The URL of an image to display in the push notification.

                • JsonBody — (String)

                  The JSON payload to use for a silent push notification.

                • MediaUrl — (String)

                  The URL of the image or video to display in the push notification.

                • RawContent — (String)

                  The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

                • SilentPush — (Boolean)

                  Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

                • TimeToLive — (Integer)

                  The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                  This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

                • Title — (String)

                  The title to display above the notification message on a recipient's device.

                • Url — (String)

                  The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

              • APNSMessage — (map)

                The message that the campaign sends through the APNs (Apple Push Notification service) channel. If specified, this message overrides the default message.

                • Action — (String)

                  The action to occur if a recipient taps the push notification. Valid values are:

                  • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                  • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                  • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                  Possible values include:
                  • "OPEN_APP"
                  • "DEEP_LINK"
                  • "URL"
                • Body — (String)

                  The body of the notification message. The maximum number of characters is 200.

                • ImageIconUrl — (String)

                  The URL of the image to display as the push-notification icon, such as the icon for the app.

                • ImageSmallIconUrl — (String)

                  The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

                • ImageUrl — (String)

                  The URL of an image to display in the push notification.

                • JsonBody — (String)

                  The JSON payload to use for a silent push notification.

                • MediaUrl — (String)

                  The URL of the image or video to display in the push notification.

                • RawContent — (String)

                  The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

                • SilentPush — (Boolean)

                  Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

                • TimeToLive — (Integer)

                  The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                  This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

                • Title — (String)

                  The title to display above the notification message on a recipient's device.

                • Url — (String)

                  The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

              • BaiduMessage — (map)

                The message that the campaign sends through the Baidu (Baidu Cloud Push) channel. If specified, this message overrides the default message.

                • Action — (String)

                  The action to occur if a recipient taps the push notification. Valid values are:

                  • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                  • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                  • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                  Possible values include:
                  • "OPEN_APP"
                  • "DEEP_LINK"
                  • "URL"
                • Body — (String)

                  The body of the notification message. The maximum number of characters is 200.

                • ImageIconUrl — (String)

                  The URL of the image to display as the push-notification icon, such as the icon for the app.

                • ImageSmallIconUrl — (String)

                  The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

                • ImageUrl — (String)

                  The URL of an image to display in the push notification.

                • JsonBody — (String)

                  The JSON payload to use for a silent push notification.

                • MediaUrl — (String)

                  The URL of the image or video to display in the push notification.

                • RawContent — (String)

                  The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

                • SilentPush — (Boolean)

                  Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

                • TimeToLive — (Integer)

                  The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                  This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

                • Title — (String)

                  The title to display above the notification message on a recipient's device.

                • Url — (String)

                  The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

              • CustomMessage — (map)

                The message that the campaign sends through a custom channel, as specified by the delivery configuration (CustomDeliveryConfiguration) settings for the campaign. If specified, this message overrides the default message.

                • Data — (String)

                  The raw, JSON-formatted string to use as the payload for the message. The maximum size is 5 KB.

              • DefaultMessage — (map)

                The default message that the campaign sends through all the channels that are configured for the campaign.

                • Action — (String)

                  The action to occur if a recipient taps the push notification. Valid values are:

                  • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                  • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                  • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                  Possible values include:
                  • "OPEN_APP"
                  • "DEEP_LINK"
                  • "URL"
                • Body — (String)

                  The body of the notification message. The maximum number of characters is 200.

                • ImageIconUrl — (String)

                  The URL of the image to display as the push-notification icon, such as the icon for the app.

                • ImageSmallIconUrl — (String)

                  The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

                • ImageUrl — (String)

                  The URL of an image to display in the push notification.

                • JsonBody — (String)

                  The JSON payload to use for a silent push notification.

                • MediaUrl — (String)

                  The URL of the image or video to display in the push notification.

                • RawContent — (String)

                  The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

                • SilentPush — (Boolean)

                  Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

                • TimeToLive — (Integer)

                  The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                  This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

                • Title — (String)

                  The title to display above the notification message on a recipient's device.

                • Url — (String)

                  The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

              • EmailMessage — (map)

                The message that the campaign sends through the email channel. If specified, this message overrides the default message.

                • Body — (String)

                  The body of the email for recipients whose email clients don't render HTML content.

                • FromAddress — (String)

                  The verified email address to send the email from. The default address is the FromAddress specified for the email channel for the application.

                • Headers — (Array<map>)

                  The list of MessageHeaders for the email. You can have up to 15 MessageHeaders for each email.

                  • Name — (String)

                    The name of the message header. The header name can contain up to 126 characters.

                  • Value — (String)

                    The value of the message header. The header value can contain up to 870 characters, including the length of any rendered attributes. For example if you add the {CreationDate} attribute, it renders as YYYY-MM-DDTHH:MM:SS.SSSZ and is 24 characters in length.

                • HtmlBody — (String)

                  The body of the email, in HTML format, for recipients whose email clients render HTML content.

                • Title — (String)

                  The subject line, or title, of the email.

              • GCMMessage — (map)

                The message that the campaign sends through the GCM channel, which enables Amazon Pinpoint to send push notifications through the Firebase Cloud Messaging (FCM), formerly Google Cloud Messaging (GCM), service. If specified, this message overrides the default message.

                • Action — (String)

                  The action to occur if a recipient taps the push notification. Valid values are:

                  • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                  • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                  • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                  Possible values include:
                  • "OPEN_APP"
                  • "DEEP_LINK"
                  • "URL"
                • Body — (String)

                  The body of the notification message. The maximum number of characters is 200.

                • ImageIconUrl — (String)

                  The URL of the image to display as the push-notification icon, such as the icon for the app.

                • ImageSmallIconUrl — (String)

                  The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

                • ImageUrl — (String)

                  The URL of an image to display in the push notification.

                • JsonBody — (String)

                  The JSON payload to use for a silent push notification.

                • MediaUrl — (String)

                  The URL of the image or video to display in the push notification.

                • RawContent — (String)

                  The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

                • SilentPush — (Boolean)

                  Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

                • TimeToLive — (Integer)

                  The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                  This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

                • Title — (String)

                  The title to display above the notification message on a recipient's device.

                • Url — (String)

                  The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

              • SMSMessage — (map)

                The message that the campaign sends through the SMS channel. If specified, this message overrides the default message.

                • Body — (String)

                  The body of the SMS message.

                • MessageType — (String)

                  The SMS message type. Valid values are TRANSACTIONAL (for messages that are critical or time-sensitive, such as a one-time passwords) and PROMOTIONAL (for messsages that aren't critical or time-sensitive, such as marketing messages).

                  Possible values include:
                  • "TRANSACTIONAL"
                  • "PROMOTIONAL"
                • OriginationNumber — (String)

                  The long code to send the SMS message from. This value should be one of the dedicated long codes that's assigned to your AWS account. Although it isn't required, we recommend that you specify the long code using an E.164 format to ensure prompt and accurate delivery of the message. For example, +12065550100.

                • SenderId — (String)

                  The sender ID to display on recipients' devices when they receive the SMS message.

                • EntityId — (String)

                  The entity ID or Principal Entity (PE) id received from the regulatory body for sending SMS in your country.

                • TemplateId — (String)

                  The template ID received from the regulatory body for sending SMS in your country.

              • InAppMessage — (map)

                The in-app message configuration.

                • Body — (String)

                  The message body of the notification, the email body or the text message.

                • Content — (Array<map>)

                  In-app message content.

                  • BackgroundColor — (String)

                    The background color for the message.

                  • BodyConfig — (map)

                    The configuration for the message body.

                    • Alignmentrequired — (String)

                      The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

                      Possible values include:
                      • "LEFT"
                      • "CENTER"
                      • "RIGHT"
                    • Bodyrequired — (String)

                      Message Body.

                    • TextColorrequired — (String)

                      The text color.

                  • HeaderConfig — (map)

                    The configuration for the message header.

                    • Alignmentrequired — (String)

                      The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

                      Possible values include:
                      • "LEFT"
                      • "CENTER"
                      • "RIGHT"
                    • Headerrequired — (String)

                      Message Header.

                    • TextColorrequired — (String)

                      The text color.

                  • ImageUrl — (String)

                    The image url for the background of message.

                  • PrimaryBtn — (map)

                    The first button inside the message.

                    • Android — (map)

                      Default button content.

                      • ButtonActionrequired — (String)

                        Action triggered by the button.

                        Possible values include:
                        • "LINK"
                        • "DEEP_LINK"
                        • "CLOSE"
                      • Link — (String)

                        Button destination.

                    • DefaultConfig — (map)

                      Default button content.

                      • BackgroundColor — (String)

                        The background color of the button.

                      • BorderRadius — (Integer)

                        The border radius of the button.

                      • ButtonActionrequired — (String)

                        Action triggered by the button.

                        Possible values include:
                        • "LINK"
                        • "DEEP_LINK"
                        • "CLOSE"
                      • Link — (String)

                        Button destination.

                      • Textrequired — (String)

                        Button text.

                      • TextColor — (String)

                        The text color of the button.

                    • IOS — (map)

                      Default button content.

                      • ButtonActionrequired — (String)

                        Action triggered by the button.

                        Possible values include:
                        • "LINK"
                        • "DEEP_LINK"
                        • "CLOSE"
                      • Link — (String)

                        Button destination.

                    • Web — (map)

                      Default button content.

                      • ButtonActionrequired — (String)

                        Action triggered by the button.

                        Possible values include:
                        • "LINK"
                        • "DEEP_LINK"
                        • "CLOSE"
                      • Link — (String)

                        Button destination.

                  • SecondaryBtn — (map)

                    The second button inside message.

                    • Android — (map)

                      Default button content.

                      • ButtonActionrequired — (String)

                        Action triggered by the button.

                        Possible values include:
                        • "LINK"
                        • "DEEP_LINK"
                        • "CLOSE"
                      • Link — (String)

                        Button destination.

                    • DefaultConfig — (map)

                      Default button content.

                      • BackgroundColor — (String)

                        The background color of the button.

                      • BorderRadius — (Integer)

                        The border radius of the button.

                      • ButtonActionrequired — (String)

                        Action triggered by the button.

                        Possible values include:
                        • "LINK"
                        • "DEEP_LINK"
                        • "CLOSE"
                      • Link — (String)

                        Button destination.

                      • Textrequired — (String)

                        Button text.

                      • TextColor — (String)

                        The text color of the button.

                    • IOS — (map)

                      Default button content.

                      • ButtonActionrequired — (String)

                        Action triggered by the button.

                        Possible values include:
                        • "LINK"
                        • "DEEP_LINK"
                        • "CLOSE"
                      • Link — (String)

                        Button destination.

                    • Web — (map)

                      Default button content.

                      • ButtonActionrequired — (String)

                        Action triggered by the button.

                        Possible values include:
                        • "LINK"
                        • "DEEP_LINK"
                        • "CLOSE"
                      • Link — (String)

                        Button destination.

                • CustomConfig — (map<String>)

                  Custom config to be sent to client.

                • Layout — (String)

                  In-app message layout.

                  Possible values include:
                  • "BOTTOM_BANNER"
                  • "TOP_BANNER"
                  • "OVERLAYS"
                  • "MOBILE_FEED"
                  • "MIDDLE_BANNER"
                  • "CAROUSEL"
            • Schedule — (map)

              The schedule settings for the treatment.

              • EndTime — (String)

                The scheduled time, in ISO 8601 format, when the campaign ended or will end.

              • EventFilter — (map)

                The type of event that causes the campaign to be sent, if the value of the Frequency property is EVENT.

                • Dimensionsrequired — (map)

                  The dimension settings of the event filter for the campaign.

                  • Attributes — (map<map>)

                    One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                    • AttributeType — (String)

                      The type of segment dimension to use. Valid values are:

                      • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                      • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                      • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                      • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                      • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                      • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                      • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                      • Possible values include:
                        • "INCLUSIVE"
                        • "EXCLUSIVE"
                        • "CONTAINS"
                        • "BEFORE"
                        • "AFTER"
                        • "ON"
                        • "BETWEEN"
                      • Valuesrequired — (Array<String>)

                        The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                    • EventType — (map)

                      The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                      • DimensionType — (String)

                        The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                        Possible values include:
                        • "INCLUSIVE"
                        • "EXCLUSIVE"
                      • Valuesrequired — (Array<String>)

                        The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                    • Metrics — (map<map>)

                      One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                      • ComparisonOperatorrequired — (String)

                        The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                      • Valuerequired — (Float)

                        The value to compare.

                  • FilterTyperequired — (String)

                    The type of event that causes the campaign to be sent. Valid values are: SYSTEM, sends the campaign when a system event occurs; and, ENDPOINT, sends the campaign when an endpoint event (Events resource) occurs.

                    Possible values include:
                    • "SYSTEM"
                    • "ENDPOINT"
                • Frequency — (String)

                  Specifies how often the campaign is sent or whether the campaign is sent in response to a specific event.

                  Possible values include:
                  • "ONCE"
                  • "HOURLY"
                  • "DAILY"
                  • "WEEKLY"
                  • "MONTHLY"
                  • "EVENT"
                  • "IN_APP_EVENT"
                • IsLocalTime — (Boolean)

                  Specifies whether the start and end times for the campaign schedule use each recipient's local time. To base the schedule on each recipient's local time, set this value to true.

                • QuietTime — (map)

                  The default quiet time for the campaign. Quiet time is a specific time range when a campaign doesn't send messages to endpoints, if all the following conditions are met:

                  • The EndpointDemographic.Timezone property of the endpoint is set to a valid value.

                  • The current time in the endpoint's time zone is later than or equal to the time specified by the QuietTime.Start property for the campaign.

                  • The current time in the endpoint's time zone is earlier than or equal to the time specified by the QuietTime.End property for the campaign.

                  If any of the preceding conditions isn't met, the endpoint will receive messages from the campaign, even if quiet time is enabled.

                  • End — (String)

                    The specific time when quiet time ends. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

                  • Start — (String)

                    The specific time when quiet time begins. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

                • StartTimerequired — (String)

                  The scheduled time when the campaign began or will begin. Valid values are: IMMEDIATE, to start the campaign immediately; or, a specific time in ISO 8601 format.

                • Timezone — (String)

                  The starting UTC offset for the campaign schedule, if the value of the IsLocalTime property is true. Valid values are: UTC, UTC+01, UTC+02, UTC+03, UTC+03:30, UTC+04, UTC+04:30, UTC+05, UTC+05:30, UTC+05:45, UTC+06, UTC+06:30, UTC+07, UTC+08, UTC+09, UTC+09:30, UTC+10, UTC+10:30, UTC+11, UTC+12, UTC+13, UTC-02, UTC-03, UTC-04, UTC-05, UTC-06, UTC-07, UTC-08, UTC-09, UTC-10, and UTC-11.

              • SizePercentrequired — (Integer)

                The allocated percentage of users (segment members) that the treatment is sent to.

              • State — (map)

                The current status of the treatment.

                • CampaignStatus — (String)

                  The current status of the campaign, or the current status of a treatment that belongs to an A/B test campaign.

                  If a campaign uses A/B testing, the campaign has a status of COMPLETED only if all campaign treatments have a status of COMPLETED. If you delete the segment that's associated with a campaign, the campaign fails and has a status of DELETED.

                  Possible values include:
                  • "SCHEDULED"
                  • "EXECUTING"
                  • "PENDING_NEXT_RUN"
                  • "COMPLETED"
                  • "PAUSED"
                  • "DELETED"
                  • "INVALID"
              • TemplateConfiguration — (map)

                The message template to use for the treatment.

                • EmailTemplate — (map)

                  The email template to use for the message.

                  • Name — (String)

                    The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                  • Version — (String)

                    The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                    If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

                • PushTemplate — (map)

                  The push notification template to use for the message.

                  • Name — (String)

                    The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                  • Version — (String)

                    The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                    If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

                • SMSTemplate — (map)

                  The SMS template to use for the message.

                  • Name — (String)

                    The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                  • Version — (String)

                    The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                    If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

                • VoiceTemplate — (map)

                  The voice template to use for the message. This object isn't supported for campaigns.

                  • Name — (String)

                    The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                  • Version — (String)

                    The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                    If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

                • InAppTemplate — (map)

                  The InApp template to use for the message. The InApp template object is not supported for SendMessages.

                  • Name — (String)

                    The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                  • Version — (String)

                    The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                    If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • TreatmentDescription — (String)

                The custom description of the treatment.

              • TreatmentName — (String)

                The custom name of the treatment.

            • ApplicationIdrequired — (String)

              The unique identifier for the application that the campaign applies to.

            • Arnrequired — (String)

              The Amazon Resource Name (ARN) of the campaign.

            • CreationDaterequired — (String)

              The date, in ISO 8601 format, when the campaign was created.

            • CustomDeliveryConfiguration — (map)

              The delivery configuration settings for sending the campaign through a custom channel.

              • DeliveryUrirequired — (String)

                The destination to send the campaign or treatment to. This value can be one of the following:

                • The name or Amazon Resource Name (ARN) of an AWS Lambda function to invoke to handle delivery of the campaign or treatment.

                • The URL for a web application or service that supports HTTPS and can receive the message. The URL has to be a full URL, including the HTTPS protocol.

              • EndpointTypes — (Array<String>)

                The types of endpoints to send the campaign or treatment to. Each valid value maps to a type of channel that you can associate with an endpoint by using the ChannelType property of an endpoint.

            • DefaultState — (map)

              The current status of the campaign's default treatment. This value exists only for campaigns that have more than one treatment.

              • CampaignStatus — (String)

                The current status of the campaign, or the current status of a treatment that belongs to an A/B test campaign.

                If a campaign uses A/B testing, the campaign has a status of COMPLETED only if all campaign treatments have a status of COMPLETED. If you delete the segment that's associated with a campaign, the campaign fails and has a status of DELETED.

                Possible values include:
                • "SCHEDULED"
                • "EXECUTING"
                • "PENDING_NEXT_RUN"
                • "COMPLETED"
                • "PAUSED"
                • "DELETED"
                • "INVALID"
            • Description — (String)

              The custom description of the campaign.

            • HoldoutPercent — (Integer)

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

            • Hook — (map)

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

              • LambdaFunctionName — (String)

                The name or Amazon Resource Name (ARN) of the AWS Lambda function that Amazon Pinpoint invokes to customize a segment for a campaign.

              • Mode — (String)

                The mode that Amazon Pinpoint uses to invoke the AWS Lambda function. Possible values are:

                • FILTER - Invoke the function to customize the segment that's used by a campaign.

                • DELIVERY - (Deprecated) Previously, invoked the function to send a campaign through a custom channel. This functionality is not supported anymore. To send a campaign through a custom channel, use the CustomDeliveryConfiguration and CampaignCustomMessage objects of the campaign.

                Possible values include:
                • "DELIVERY"
                • "FILTER"
              • WebUrl — (String)

                The web URL that Amazon Pinpoint calls to invoke the AWS Lambda function over HTTPS.

            • Idrequired — (String)

              The unique identifier for the campaign.

            • IsPaused — (Boolean)

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

            • LastModifiedDaterequired — (String)

              The date, in ISO 8601 format, when the campaign was last modified.

            • Limits — (map)

              The messaging limits for the campaign.

              • Daily — (Integer)

                The maximum number of messages that a campaign can send to a single endpoint during a 24-hour period. For an application, this value specifies the default limit for the number of messages that campaigns and journeys can send to a single endpoint during a 24-hour period. The maximum value is 100.

              • MaximumDuration — (Integer)

                The maximum amount of time, in seconds, that a campaign can attempt to deliver a message after the scheduled start time for the campaign. The minimum value is 60 seconds.

              • MessagesPerSecond — (Integer)

                The maximum number of messages that a campaign can send each second. For an application, this value specifies the default limit for the number of messages that campaigns can send each second. The minimum value is 1. The maximum value is 20,000.

              • Total — (Integer)

                The maximum number of messages that a campaign can send to a single endpoint during the course of the campaign. If a campaign recurs, this setting applies to all runs of the campaign. The maximum value is 100.

              • Session — (Integer)

                The maximum total number of messages that the campaign can send per user session.

            • MessageConfiguration — (map)

              The message configuration settings for the campaign.

              • ADMMessage — (map)

                The message that the campaign sends through the ADM (Amazon Device Messaging) channel. If specified, this message overrides the default message.

                • Action — (String)

                  The action to occur if a recipient taps the push notification. Valid values are:

                  • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                  • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                  • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                  Possible values include:
                  • "OPEN_APP"
                  • "DEEP_LINK"
                  • "URL"
                • Body — (String)

                  The body of the notification message. The maximum number of characters is 200.

                • ImageIconUrl — (String)

                  The URL of the image to display as the push-notification icon, such as the icon for the app.

                • ImageSmallIconUrl — (String)

                  The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

                • ImageUrl — (String)

                  The URL of an image to display in the push notification.

                • JsonBody — (String)

                  The JSON payload to use for a silent push notification.

                • MediaUrl — (String)

                  The URL of the image or video to display in the push notification.

                • RawContent — (String)

                  The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

                • SilentPush — (Boolean)

                  Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

                • TimeToLive — (Integer)

                  The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                  This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

                • Title — (String)

                  The title to display above the notification message on a recipient's device.

                • Url — (String)

                  The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

              • APNSMessage — (map)

                The message that the campaign sends through the APNs (Apple Push Notification service) channel. If specified, this message overrides the default message.

                • Action — (String)

                  The action to occur if a recipient taps the push notification. Valid values are:

                  • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                  • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                  • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                  Possible values include:
                  • "OPEN_APP"
                  • "DEEP_LINK"
                  • "URL"
                • Body — (String)

                  The body of the notification message. The maximum number of characters is 200.

                • ImageIconUrl — (String)

                  The URL of the image to display as the push-notification icon, such as the icon for the app.

                • ImageSmallIconUrl — (String)

                  The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

                • ImageUrl — (String)

                  The URL of an image to display in the push notification.

                • JsonBody — (String)

                  The JSON payload to use for a silent push notification.

                • MediaUrl — (String)

                  The URL of the image or video to display in the push notification.

                • RawContent — (String)

                  The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

                • SilentPush — (Boolean)

                  Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

                • TimeToLive — (Integer)

                  The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                  This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

                • Title — (String)

                  The title to display above the notification message on a recipient's device.

                • Url — (String)

                  The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

              • BaiduMessage — (map)

                The message that the campaign sends through the Baidu (Baidu Cloud Push) channel. If specified, this message overrides the default message.

                • Action — (String)

                  The action to occur if a recipient taps the push notification. Valid values are:

                  • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                  • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                  • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                  Possible values include:
                  • "OPEN_APP"
                  • "DEEP_LINK"
                  • "URL"
                • Body — (String)

                  The body of the notification message. The maximum number of characters is 200.

                • ImageIconUrl — (String)

                  The URL of the image to display as the push-notification icon, such as the icon for the app.

                • ImageSmallIconUrl — (String)

                  The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

                • ImageUrl — (String)

                  The URL of an image to display in the push notification.

                • JsonBody — (String)

                  The JSON payload to use for a silent push notification.

                • MediaUrl — (String)

                  The URL of the image or video to display in the push notification.

                • RawContent — (String)

                  The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

                • SilentPush — (Boolean)

                  Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

                • TimeToLive — (Integer)

                  The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                  This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

                • Title — (String)

                  The title to display above the notification message on a recipient's device.

                • Url — (String)

                  The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

              • CustomMessage — (map)

                The message that the campaign sends through a custom channel, as specified by the delivery configuration (CustomDeliveryConfiguration) settings for the campaign. If specified, this message overrides the default message.

                • Data — (String)

                  The raw, JSON-formatted string to use as the payload for the message. The maximum size is 5 KB.

              • DefaultMessage — (map)

                The default message that the campaign sends through all the channels that are configured for the campaign.

                • Action — (String)

                  The action to occur if a recipient taps the push notification. Valid values are:

                  • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                  • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                  • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                  Possible values include:
                  • "OPEN_APP"
                  • "DEEP_LINK"
                  • "URL"
                • Body — (String)

                  The body of the notification message. The maximum number of characters is 200.

                • ImageIconUrl — (String)

                  The URL of the image to display as the push-notification icon, such as the icon for the app.

                • ImageSmallIconUrl — (String)

                  The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

                • ImageUrl — (String)

                  The URL of an image to display in the push notification.

                • JsonBody — (String)

                  The JSON payload to use for a silent push notification.

                • MediaUrl — (String)

                  The URL of the image or video to display in the push notification.

                • RawContent — (String)

                  The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

                • SilentPush — (Boolean)

                  Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

                • TimeToLive — (Integer)

                  The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                  This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

                • Title — (String)

                  The title to display above the notification message on a recipient's device.

                • Url — (String)

                  The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

              • EmailMessage — (map)

                The message that the campaign sends through the email channel. If specified, this message overrides the default message.

                • Body — (String)

                  The body of the email for recipients whose email clients don't render HTML content.

                • FromAddress — (String)

                  The verified email address to send the email from. The default address is the FromAddress specified for the email channel for the application.

                • Headers — (Array<map>)

                  The list of MessageHeaders for the email. You can have up to 15 MessageHeaders for each email.

                  • Name — (String)

                    The name of the message header. The header name can contain up to 126 characters.

                  • Value — (String)

                    The value of the message header. The header value can contain up to 870 characters, including the length of any rendered attributes. For example if you add the {CreationDate} attribute, it renders as YYYY-MM-DDTHH:MM:SS.SSSZ and is 24 characters in length.

                • HtmlBody — (String)

                  The body of the email, in HTML format, for recipients whose email clients render HTML content.

                • Title — (String)

                  The subject line, or title, of the email.

              • GCMMessage — (map)

                The message that the campaign sends through the GCM channel, which enables Amazon Pinpoint to send push notifications through the Firebase Cloud Messaging (FCM), formerly Google Cloud Messaging (GCM), service. If specified, this message overrides the default message.

                • Action — (String)

                  The action to occur if a recipient taps the push notification. Valid values are:

                  • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                  • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                  • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                  Possible values include:
                  • "OPEN_APP"
                  • "DEEP_LINK"
                  • "URL"
                • Body — (String)

                  The body of the notification message. The maximum number of characters is 200.

                • ImageIconUrl — (String)

                  The URL of the image to display as the push-notification icon, such as the icon for the app.

                • ImageSmallIconUrl — (String)

                  The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

                • ImageUrl — (String)

                  The URL of an image to display in the push notification.

                • JsonBody — (String)

                  The JSON payload to use for a silent push notification.

                • MediaUrl — (String)

                  The URL of the image or video to display in the push notification.

                • RawContent — (String)

                  The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

                • SilentPush — (Boolean)

                  Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

                • TimeToLive — (Integer)

                  The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                  This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

                • Title — (String)

                  The title to display above the notification message on a recipient's device.

                • Url — (String)

                  The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

              • SMSMessage — (map)

                The message that the campaign sends through the SMS channel. If specified, this message overrides the default message.

                • Body — (String)

                  The body of the SMS message.

                • MessageType — (String)

                  The SMS message type. Valid values are TRANSACTIONAL (for messages that are critical or time-sensitive, such as a one-time passwords) and PROMOTIONAL (for messsages that aren't critical or time-sensitive, such as marketing messages).

                  Possible values include:
                  • "TRANSACTIONAL"
                  • "PROMOTIONAL"
                • OriginationNumber — (String)

                  The long code to send the SMS message from. This value should be one of the dedicated long codes that's assigned to your AWS account. Although it isn't required, we recommend that you specify the long code using an E.164 format to ensure prompt and accurate delivery of the message. For example, +12065550100.

                • SenderId — (String)

                  The sender ID to display on recipients' devices when they receive the SMS message.

                • EntityId — (String)

                  The entity ID or Principal Entity (PE) id received from the regulatory body for sending SMS in your country.

                • TemplateId — (String)

                  The template ID received from the regulatory body for sending SMS in your country.

              • InAppMessage — (map)

                The in-app message configuration.

                • Body — (String)

                  The message body of the notification, the email body or the text message.

                • Content — (Array<map>)

                  In-app message content.

                  • BackgroundColor — (String)

                    The background color for the message.

                  • BodyConfig — (map)

                    The configuration for the message body.

                    • Alignmentrequired — (String)

                      The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

                      Possible values include:
                      • "LEFT"
                      • "CENTER"
                      • "RIGHT"
                    • Bodyrequired — (String)

                      Message Body.

                    • TextColorrequired — (String)

                      The text color.

                  • HeaderConfig — (map)

                    The configuration for the message header.

                    • Alignmentrequired — (String)

                      The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

                      Possible values include:
                      • "LEFT"
                      • "CENTER"
                      • "RIGHT"
                    • Headerrequired — (String)

                      Message Header.

                    • TextColorrequired — (String)

                      The text color.

                  • ImageUrl — (String)

                    The image url for the background of message.

                  • PrimaryBtn — (map)

                    The first button inside the message.

                    • Android — (map)

                      Default button content.

                      • ButtonActionrequired — (String)

                        Action triggered by the button.

                        Possible values include:
                        • "LINK"
                        • "DEEP_LINK"
                        • "CLOSE"
                      • Link — (String)

                        Button destination.

                    • DefaultConfig — (map)

                      Default button content.

                      • BackgroundColor — (String)

                        The background color of the button.

                      • BorderRadius — (Integer)

                        The border radius of the button.

                      • ButtonActionrequired — (String)

                        Action triggered by the button.

                        Possible values include:
                        • "LINK"
                        • "DEEP_LINK"
                        • "CLOSE"
                      • Link — (String)

                        Button destination.

                      • Textrequired — (String)

                        Button text.

                      • TextColor — (String)

                        The text color of the button.

                    • IOS — (map)

                      Default button content.

                      • ButtonActionrequired — (String)

                        Action triggered by the button.

                        Possible values include:
                        • "LINK"
                        • "DEEP_LINK"
                        • "CLOSE"
                      • Link — (String)

                        Button destination.

                    • Web — (map)

                      Default button content.

                      • ButtonActionrequired — (String)

                        Action triggered by the button.

                        Possible values include:
                        • "LINK"
                        • "DEEP_LINK"
                        • "CLOSE"
                      • Link — (String)

                        Button destination.

                  • SecondaryBtn — (map)

                    The second button inside message.

                    • Android — (map)

                      Default button content.

                      • ButtonActionrequired — (String)

                        Action triggered by the button.

                        Possible values include:
                        • "LINK"
                        • "DEEP_LINK"
                        • "CLOSE"
                      • Link — (String)

                        Button destination.

                    • DefaultConfig — (map)

                      Default button content.

                      • BackgroundColor — (String)

                        The background color of the button.

                      • BorderRadius — (Integer)

                        The border radius of the button.

                      • ButtonActionrequired — (String)

                        Action triggered by the button.

                        Possible values include:
                        • "LINK"
                        • "DEEP_LINK"
                        • "CLOSE"
                      • Link — (String)

                        Button destination.

                      • Textrequired — (String)

                        Button text.

                      • TextColor — (String)

                        The text color of the button.

                    • IOS — (map)

                      Default button content.

                      • ButtonActionrequired — (String)

                        Action triggered by the button.

                        Possible values include:
                        • "LINK"
                        • "DEEP_LINK"
                        • "CLOSE"
                      • Link — (String)

                        Button destination.

                    • Web — (map)

                      Default button content.

                      • ButtonActionrequired — (String)

                        Action triggered by the button.

                        Possible values include:
                        • "LINK"
                        • "DEEP_LINK"
                        • "CLOSE"
                      • Link — (String)

                        Button destination.

                • CustomConfig — (map<String>)

                  Custom config to be sent to client.

                • Layout — (String)

                  In-app message layout.

                  Possible values include:
                  • "BOTTOM_BANNER"
                  • "TOP_BANNER"
                  • "OVERLAYS"
                  • "MOBILE_FEED"
                  • "MIDDLE_BANNER"
                  • "CAROUSEL"
            • Name — (String)

              The name of the campaign.

            • Schedule — (map)

              The schedule settings for the campaign.

              • EndTime — (String)

                The scheduled time, in ISO 8601 format, when the campaign ended or will end.

              • EventFilter — (map)

                The type of event that causes the campaign to be sent, if the value of the Frequency property is EVENT.

                • Dimensionsrequired — (map)

                  The dimension settings of the event filter for the campaign.

                  • Attributes — (map<map>)

                    One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                    • AttributeType — (String)

                      The type of segment dimension to use. Valid values are:

                      • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                      • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                      • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                      • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                      • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                      • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                      • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                      • Possible values include:
                        • "INCLUSIVE"
                        • "EXCLUSIVE"
                        • "CONTAINS"
                        • "BEFORE"
                        • "AFTER"
                        • "ON"
                        • "BETWEEN"
                      • Valuesrequired — (Array<String>)

                        The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                    • EventType — (map)

                      The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                      • DimensionType — (String)

                        The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                        Possible values include:
                        • "INCLUSIVE"
                        • "EXCLUSIVE"
                      • Valuesrequired — (Array<String>)

                        The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                    • Metrics — (map<map>)

                      One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                      • ComparisonOperatorrequired — (String)

                        The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                      • Valuerequired — (Float)

                        The value to compare.

                  • FilterTyperequired — (String)

                    The type of event that causes the campaign to be sent. Valid values are: SYSTEM, sends the campaign when a system event occurs; and, ENDPOINT, sends the campaign when an endpoint event (Events resource) occurs.

                    Possible values include:
                    • "SYSTEM"
                    • "ENDPOINT"
                • Frequency — (String)

                  Specifies how often the campaign is sent or whether the campaign is sent in response to a specific event.

                  Possible values include:
                  • "ONCE"
                  • "HOURLY"
                  • "DAILY"
                  • "WEEKLY"
                  • "MONTHLY"
                  • "EVENT"
                  • "IN_APP_EVENT"
                • IsLocalTime — (Boolean)

                  Specifies whether the start and end times for the campaign schedule use each recipient's local time. To base the schedule on each recipient's local time, set this value to true.

                • QuietTime — (map)

                  The default quiet time for the campaign. Quiet time is a specific time range when a campaign doesn't send messages to endpoints, if all the following conditions are met:

                  • The EndpointDemographic.Timezone property of the endpoint is set to a valid value.

                  • The current time in the endpoint's time zone is later than or equal to the time specified by the QuietTime.Start property for the campaign.

                  • The current time in the endpoint's time zone is earlier than or equal to the time specified by the QuietTime.End property for the campaign.

                  If any of the preceding conditions isn't met, the endpoint will receive messages from the campaign, even if quiet time is enabled.

                  • End — (String)

                    The specific time when quiet time ends. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

                  • Start — (String)

                    The specific time when quiet time begins. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

                • StartTimerequired — (String)

                  The scheduled time when the campaign began or will begin. Valid values are: IMMEDIATE, to start the campaign immediately; or, a specific time in ISO 8601 format.

                • Timezone — (String)

                  The starting UTC offset for the campaign schedule, if the value of the IsLocalTime property is true. Valid values are: UTC, UTC+01, UTC+02, UTC+03, UTC+03:30, UTC+04, UTC+04:30, UTC+05, UTC+05:30, UTC+05:45, UTC+06, UTC+06:30, UTC+07, UTC+08, UTC+09, UTC+09:30, UTC+10, UTC+10:30, UTC+11, UTC+12, UTC+13, UTC-02, UTC-03, UTC-04, UTC-05, UTC-06, UTC-07, UTC-08, UTC-09, UTC-10, and UTC-11.

              • SegmentIdrequired — (String)

                The unique identifier for the segment that's associated with the campaign.

              • SegmentVersionrequired — (Integer)

                The version number of the segment that's associated with the campaign.

              • State — (map)

                The current status of the campaign.

                • CampaignStatus — (String)

                  The current status of the campaign, or the current status of a treatment that belongs to an A/B test campaign.

                  If a campaign uses A/B testing, the campaign has a status of COMPLETED only if all campaign treatments have a status of COMPLETED. If you delete the segment that's associated with a campaign, the campaign fails and has a status of DELETED.

                  Possible values include:
                  • "SCHEDULED"
                  • "EXECUTING"
                  • "PENDING_NEXT_RUN"
                  • "COMPLETED"
                  • "PAUSED"
                  • "DELETED"
                  • "INVALID"
              • tags — (map<String>)

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

              • TemplateConfiguration — (map)

                The message template that’s used for the campaign.

                • EmailTemplate — (map)

                  The email template to use for the message.

                  • Name — (String)

                    The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                  • Version — (String)

                    The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                    If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

                • PushTemplate — (map)

                  The push notification template to use for the message.

                  • Name — (String)

                    The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                  • Version — (String)

                    The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                    If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

                • SMSTemplate — (map)

                  The SMS template to use for the message.

                  • Name — (String)

                    The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                  • Version — (String)

                    The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                    If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

                • VoiceTemplate — (map)

                  The voice template to use for the message. This object isn't supported for campaigns.

                  • Name — (String)

                    The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                  • Version — (String)

                    The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                    If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

                • InAppTemplate — (map)

                  The InApp template to use for the message. The InApp template object is not supported for SendMessages.

                  • Name — (String)

                    The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                  • Version — (String)

                    The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                    If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • TreatmentDescription — (String)

                The custom description of the default treatment for the campaign.

              • TreatmentName — (String)

                The 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.

              • Version — (Integer)

                The version number of the campaign.

              • Priority — (Integer)

                Defines the priority of the campaign, used to decide the order of messages displayed to user if there are multiple messages scheduled to be displayed at the same moment.

            • NextToken — (String)

              The string to use in a subsequent request to get the next page of results in a paginated response. This value is null if there are no additional pages.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getChannels(params = {}, callback) ⇒ AWS.Request

Retrieves information about the history and status of each channel for an application.

Service Reference:

Examples:

Calling the getChannels operation

var params = {
  ApplicationId: 'STRING_VALUE' /* required */
};
pinpoint.getChannels(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • ChannelsResponse — (map)

        Provides information about the general settings and status of all channels for an application, including channels that aren't enabled for the application.

        • Channelsrequired — (map<map>)

          A map that contains a multipart response for each channel. For each item in this object, the ChannelType is the key and the Channel is the value.

          • ApplicationId — (String)

            The unique identifier for the application.

          • CreationDate — (String)

            The date and time, in ISO 8601 format, when the channel was enabled.

          • Enabled — (Boolean)

            Specifies whether the channel is enabled for the application.

          • HasCredential — (Boolean)

            (Not used) This property is retained only for backward compatibility.

          • Id — (String)

            (Deprecated) An identifier for the channel. This property is retained only for backward compatibility.

          • IsArchived — (Boolean)

            Specifies whether the channel is archived.

          • LastModifiedBy — (String)

            The user who last modified the channel.

          • LastModifiedDate — (String)

            The date and time, in ISO 8601 format, when the channel was last modified.

          • Version — (Integer)

            The current version of the channel.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getEmailChannel(params = {}, callback) ⇒ AWS.Request

Retrieves information about the status and settings of the email channel for an application.

Service Reference:

Examples:

Calling the getEmailChannel operation

var params = {
  ApplicationId: 'STRING_VALUE' /* required */
};
pinpoint.getEmailChannel(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • EmailChannelResponse — (map)

        Provides information about the status and settings of the email channel for an application.

        • ApplicationId — (String)

          The unique identifier for the application that the email channel applies to.

        • ConfigurationSet — (String)

          The Amazon SES configuration set that's applied to messages that are sent through the channel.

        • CreationDate — (String)

          The date and time, in ISO 8601 format, when the email channel was enabled.

        • Enabled — (Boolean)

          Specifies whether the email channel is enabled for the application.

        • FromAddress — (String)

          The verified email address that email is sent from when you send email through the channel.

        • HasCredential — (Boolean)

          (Not used) This property is retained only for backward compatibility.

        • Id — (String)

          (Deprecated) An identifier for the email channel. This property is retained only for backward compatibility.

        • Identity — (String)

          The Amazon Resource Name (ARN) of the identity, verified with Amazon Simple Email Service (Amazon SES), that's used when you send email through the channel.

        • IsArchived — (Boolean)

          Specifies whether the email channel is archived.

        • LastModifiedBy — (String)

          The user who last modified the email channel.

        • LastModifiedDate — (String)

          The date and time, in ISO 8601 format, when the email channel was last modified.

        • MessagesPerSecond — (Integer)

          The maximum number of emails that can be sent through the channel each second.

        • Platformrequired — (String)

          The type of messaging or notification platform for the channel. For the email channel, this value is EMAIL.

        • RoleArn — (String)

          The ARN of the AWS Identity and Access Management (IAM) role that Amazon Pinpoint uses to submit email-related event data for the channel.

        • OrchestrationSendingRoleArn — (String)

          The ARN of an IAM role for Amazon Pinpoint to use to send email from your campaigns or journeys through Amazon SES.

        • Version — (Integer)

          The current version of the email channel.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getEmailTemplate(params = {}, callback) ⇒ AWS.Request

Retrieves the content and settings of a message template for messages that are sent through the email channel.

Service Reference:

Examples:

Calling the getEmailTemplate operation

var params = {
  TemplateName: 'STRING_VALUE', /* required */
  Version: 'STRING_VALUE'
};
pinpoint.getEmailTemplate(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • TemplateName — (String)

      The name of the message template. A template name must start with an alphanumeric character and can contain a maximum of 128 characters. The characters can be alphanumeric characters, underscores (_), or hyphens (-). Template names are case sensitive.

    • Version — (String)

      The unique identifier for the version of the message template to update, retrieve information about, or delete. To retrieve identifiers and other information for all the versions of a template, use the Template Versions resource.

      If specified, this value must match the identifier for an existing template version. If specified for an update operation, this value must match the identifier for the latest existing version of the template. This restriction helps ensure that race conditions don't occur.

      If you don't specify a value for this parameter, Amazon Pinpoint does the following:

      • For a get operation, retrieves information about the active version of the template.

      • For an update operation, saves the updates to (overwrites) the latest existing version of the template, if the create-new-version parameter isn't used or is set to false.

      • For a delete operation, deletes the template, including all versions of the template.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • EmailTemplateResponse — (map)

        Provides information about the content and settings for a message template that can be used in messages that are sent through the email channel.

        • Arn — (String)

          The Amazon Resource Name (ARN) of the message template.

        • CreationDaterequired — (String)

          The date, in ISO 8601 format, when the message template was created.

        • DefaultSubstitutions — (String)

          The JSON object that specifies the default values that are used for message variables in the message template. This object is a set of key-value pairs. Each key defines a message variable in the template. The corresponding value defines the default value for that variable.

        • HtmlPart — (String)

          The message body, in HTML format, that's used in email messages that are based on the message template.

        • LastModifiedDaterequired — (String)

          The date, in ISO 8601 format, when the message template was last modified.

        • RecommenderId — (String)

          The unique identifier for the recommender model that's used by the message template.

        • Subject — (String)

          The subject line, or title, that's used in email messages that are based on the message template.

        • Headers — (Array<map>)

          The list of MessageHeaders for the email. You can have up to 15 Headers.

          • Name — (String)

            The name of the message header. The header name can contain up to 126 characters.

          • Value — (String)

            The value of the message header. The header value can contain up to 870 characters, including the length of any rendered attributes. For example if you add the {CreationDate} attribute, it renders as YYYY-MM-DDTHH:MM:SS.SSSZ and is 24 characters in length.

        • tags — (map<String>)

          A string-to-string map of key-value pairs that identifies the tags that are associated with the message template. Each tag consists of a required tag key and an associated tag value.

        • TemplateDescription — (String)

          The custom description of the message template.

        • TemplateNamerequired — (String)

          The name of the message template.

        • TemplateTyperequired — (String)

          The type of channel that the message template is designed for. For an email template, this value is EMAIL.

          Possible values include:
          • "EMAIL"
          • "SMS"
          • "VOICE"
          • "PUSH"
          • "INAPP"
        • TextPart — (String)

          The message body, in plain text format, that's used in email messages that are based on the message template.

        • Version — (String)

          The unique identifier, as an integer, for the active version of the message template, or the version of the template that you specified by using the version parameter in your request.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getEndpoint(params = {}, callback) ⇒ AWS.Request

Retrieves information about the settings and attributes of a specific endpoint for an application.

Service Reference:

Examples:

Calling the getEndpoint operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  EndpointId: 'STRING_VALUE' /* required */
};
pinpoint.getEndpoint(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • EndpointId — (String)

      The case insensitive unique identifier for the endpoint. The identifier can't contain $, { or }.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • EndpointResponse — (map)

        Provides information about the channel type and other settings for an endpoint.

        • Address — (String)

          The destination address for messages or push notifications that you send to the endpoint. The address varies by channel. For example, the address for a push-notification channel is typically the token provided by a push notification service, such as an Apple Push Notification service (APNs) device token or a Firebase Cloud Messaging (FCM) registration token. The address for the SMS channel is a phone number in E.164 format, such as +12065550100. The address for the email channel is an email address.

        • ApplicationId — (String)

          The unique identifier for the application that's associated with the endpoint.

        • Attributes — (map<Array<String>>)

          One or more custom attributes that describe the endpoint by associating a name with an array of values. For example, the value of a custom attribute named Interests might be: ["Science", "Music", "Travel"]. You can use these attributes as filter criteria when you create segments.

        • ChannelType — (String)

          The channel that's used when sending messages or push notifications to the endpoint.

          Possible values include:
          • "PUSH"
          • "GCM"
          • "APNS"
          • "APNS_SANDBOX"
          • "APNS_VOIP"
          • "APNS_VOIP_SANDBOX"
          • "ADM"
          • "SMS"
          • "VOICE"
          • "EMAIL"
          • "BAIDU"
          • "CUSTOM"
          • "IN_APP"
        • CohortId — (String)

          A number from 0-99 that represents the cohort that the endpoint is assigned to. Endpoints are grouped into cohorts randomly, and each cohort contains approximately 1 percent of the endpoints for an application. Amazon Pinpoint assigns cohorts to the holdout or treatment allocations for campaigns.

        • CreationDate — (String)

          The date and time, in ISO 8601 format, when the endpoint was created.

        • Demographic — (map)

          The demographic information for the endpoint, such as the time zone and platform.

          • AppVersion — (String)

            The version of the app that's associated with the endpoint.

          • Locale — (String)

            The locale of the endpoint, in the following format: the ISO 639-1 alpha-2 code, followed by an underscore (_), followed by an ISO 3166-1 alpha-2 value.

          • Make — (String)

            The manufacturer of the endpoint device, such as apple or samsung.

          • Model — (String)

            The model name or number of the endpoint device, such as iPhone or SM-G900F.

          • ModelVersion — (String)

            The model version of the endpoint device.

          • Platform — (String)

            The platform of the endpoint device, such as ios.

          • PlatformVersion — (String)

            The platform version of the endpoint device.

          • Timezone — (String)

            The time zone of the endpoint, specified as a tz database name value, such as America/Los_Angeles.

        • EffectiveDate — (String)

          The date and time, in ISO 8601 format, when the endpoint was last updated.

        • EndpointStatus — (String)

          Specifies whether messages or push notifications are sent to the endpoint. Possible values are: ACTIVE, messages are sent to the endpoint; and, INACTIVE, messages aren’t sent to the endpoint.

          Amazon Pinpoint automatically sets this value to ACTIVE when you create an endpoint or update an existing endpoint. Amazon Pinpoint automatically sets this value to INACTIVE if you update another endpoint that has the same address specified by the Address property.

        • Id — (String)

          The unique identifier that you assigned to the endpoint. The identifier should be a globally unique identifier (GUID) to ensure that it doesn't conflict with other endpoint identifiers that are associated with the application.

        • Location — (map)

          The geographic information for the endpoint.

          • City — (String)

            The name of the city where the endpoint is located.

          • Country — (String)

            The two-character code, in ISO 3166-1 alpha-2 format, for the country or region where the endpoint is located. For example, US for the United States.

          • Latitude — (Float)

            The latitude coordinate of the endpoint location, rounded to one decimal place.

          • Longitude — (Float)

            The longitude coordinate of the endpoint location, rounded to one decimal place.

          • PostalCode — (String)

            The postal or ZIP code for the area where the endpoint is located.

          • Region — (String)

            The name of the region where the endpoint is located. For locations in the United States, this value is the name of a state.

        • Metrics — (map<Float>)

          One or more custom metrics that your app reports to Amazon Pinpoint for the endpoint.

        • OptOut — (String)

          Specifies whether the user who's associated with the endpoint has opted out of receiving messages and push notifications from you. Possible values are: ALL, the user has opted out and doesn't want to receive any messages or push notifications; and, NONE, the user hasn't opted out and wants to receive all messages and push notifications.

        • RequestId — (String)

          The unique identifier for the most recent request to update the endpoint.

        • User — (map)

          One or more custom user attributes that your app reports to Amazon Pinpoint for the user who's associated with the endpoint.

          • UserAttributes — (map<Array<String>>)

            One or more custom attributes that describe the user by associating a name with an array of values. For example, the value of an attribute named Interests might be: ["Science", "Music", "Travel"]. You can use these attributes as filter criteria when you create segments. Attribute names are case sensitive.

            An attribute name can contain up to 50 characters. An attribute value can contain up to 100 characters. When you define the name of a custom attribute, avoid using the following characters: number sign (#), colon (:), question mark (?), backslash (), and slash (/). The Amazon Pinpoint console can't display attribute names that contain these characters. This restriction doesn't apply to attribute values.

          • UserId — (String)

            The unique identifier for the user.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getEventStream(params = {}, callback) ⇒ AWS.Request

Retrieves information about the event stream settings for an application.

Service Reference:

Examples:

Calling the getEventStream operation

var params = {
  ApplicationId: 'STRING_VALUE' /* required */
};
pinpoint.getEventStream(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • EventStream — (map)

        Specifies settings for publishing event data to an Amazon Kinesis data stream or an Amazon Kinesis Data Firehose delivery stream.

        • ApplicationIdrequired — (String)

          The unique identifier for the application to publish event data for.

        • DestinationStreamArnrequired — (String)

          The Amazon Resource Name (ARN) of the Amazon Kinesis data stream or Amazon Kinesis Data Firehose delivery stream to publish event data to.

          For a Kinesis data stream, the ARN format is: arn:aws:kinesis:region:account-id:stream/stream_name

          For a Kinesis Data Firehose delivery stream, the ARN format is: arn:aws:firehose:region:account-id:deliverystream/stream_name

        • ExternalId — (String)

          (Deprecated) Your AWS account ID, which you assigned to an external ID key in an IAM trust policy. Amazon Pinpoint previously used this value to assume an IAM role when publishing event data, but we removed this requirement. We don't recommend use of external IDs for IAM roles that are assumed by Amazon Pinpoint.

        • LastModifiedDate — (String)

          The date, in ISO 8601 format, when the event stream was last modified.

        • LastUpdatedBy — (String)

          The IAM user who last modified the event stream.

        • RoleArnrequired — (String)

          The AWS Identity and Access Management (IAM) role that authorizes Amazon Pinpoint to publish event data to the stream in your AWS account.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getExportJob(params = {}, callback) ⇒ AWS.Request

Retrieves information about the status and settings of a specific export job for an application.

Service Reference:

Examples:

Calling the getExportJob operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  JobId: 'STRING_VALUE' /* required */
};
pinpoint.getExportJob(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • JobId — (String)

      The unique identifier for the job.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • ExportJobResponse — (map)

        Provides information about the status and settings of a job that exports endpoint definitions to a file. The file can be added directly to an Amazon Simple Storage Service (Amazon S3) bucket by using the Amazon Pinpoint API or downloaded directly to a computer by using the Amazon Pinpoint console.

        • ApplicationIdrequired — (String)

          The unique identifier for the application that's associated with the export job.

        • CompletedPieces — (Integer)

          The number of pieces that were processed successfully (completed) by the export job, as of the time of the request.

        • CompletionDate — (String)

          The date, in ISO 8601 format, when the export job was completed.

        • CreationDaterequired — (String)

          The date, in ISO 8601 format, when the export job was created.

        • Definitionrequired — (map)

          The resource settings that apply to the export job.

          • RoleArnrequired — (String)

            The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that authorized Amazon Pinpoint to access the Amazon S3 location where the endpoint definitions were exported to.

          • S3UrlPrefixrequired — (String)

            The URL of the location in an Amazon Simple Storage Service (Amazon S3) bucket where the endpoint definitions were exported to. This location is typically a folder that contains multiple files. The URL should be in the following format: s3://bucket-name/folder-name/.

          • SegmentId — (String)

            The identifier for the segment that the endpoint definitions were exported from. If this value isn't present, Amazon Pinpoint exported definitions for all the endpoints that are associated with the application.

          • SegmentVersion — (Integer)

            The version of the segment that the endpoint definitions were exported from.

        • FailedPieces — (Integer)

          The number of pieces that weren't processed successfully (failed) by the export job, as of the time of the request.

        • Failures — (Array<String>)

          An array of entries, one for each of the first 100 entries that weren't processed successfully (failed) by the export job, if any.

        • Idrequired — (String)

          The unique identifier for the export job.

        • JobStatusrequired — (String)

          The status of the export job. The job status is FAILED if Amazon Pinpoint wasn't able to process one or more pieces in the job.

          Possible values include:
          • "CREATED"
          • "PREPARING_FOR_INITIALIZATION"
          • "INITIALIZING"
          • "PROCESSING"
          • "PENDING_JOB"
          • "COMPLETING"
          • "COMPLETED"
          • "FAILING"
          • "FAILED"
        • TotalFailures — (Integer)

          The total number of endpoint definitions that weren't processed successfully (failed) by the export job, typically because an error, such as a syntax error, occurred.

        • TotalPieces — (Integer)

          The total number of pieces that must be processed to complete the export job. Each piece consists of an approximately equal portion of the endpoint definitions that are part of the export job.

        • TotalProcessed — (Integer)

          The total number of endpoint definitions that were processed by the export job.

        • Typerequired — (String)

          The job type. This value is EXPORT for export jobs.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getExportJobs(params = {}, callback) ⇒ AWS.Request

Retrieves information about the status and settings of all the export jobs for an application.

Service Reference:

Examples:

Calling the getExportJobs operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  PageSize: 'STRING_VALUE',
  Token: 'STRING_VALUE'
};
pinpoint.getExportJobs(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • PageSize — (String)

      The maximum number of items to include in each page of a paginated response. This parameter is not supported for application, campaign, and journey metrics.

    • Token — (String)

      The NextToken string that specifies which page of results to return in a paginated response.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • ExportJobsResponse — (map)

        Provides information about all the export jobs that are associated with an application or segment. An export job is a job that exports endpoint definitions to a file.

        • Itemrequired — (Array<map>)

          An array of responses, one for each export job that's associated with the application (Export Jobs resource) or segment (Segment Export Jobs resource).

          • ApplicationIdrequired — (String)

            The unique identifier for the application that's associated with the export job.

          • CompletedPieces — (Integer)

            The number of pieces that were processed successfully (completed) by the export job, as of the time of the request.

          • CompletionDate — (String)

            The date, in ISO 8601 format, when the export job was completed.

          • CreationDaterequired — (String)

            The date, in ISO 8601 format, when the export job was created.

          • Definitionrequired — (map)

            The resource settings that apply to the export job.

            • RoleArnrequired — (String)

              The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that authorized Amazon Pinpoint to access the Amazon S3 location where the endpoint definitions were exported to.

            • S3UrlPrefixrequired — (String)

              The URL of the location in an Amazon Simple Storage Service (Amazon S3) bucket where the endpoint definitions were exported to. This location is typically a folder that contains multiple files. The URL should be in the following format: s3://bucket-name/folder-name/.

            • SegmentId — (String)

              The identifier for the segment that the endpoint definitions were exported from. If this value isn't present, Amazon Pinpoint exported definitions for all the endpoints that are associated with the application.

            • SegmentVersion — (Integer)

              The version of the segment that the endpoint definitions were exported from.

          • FailedPieces — (Integer)

            The number of pieces that weren't processed successfully (failed) by the export job, as of the time of the request.

          • Failures — (Array<String>)

            An array of entries, one for each of the first 100 entries that weren't processed successfully (failed) by the export job, if any.

          • Idrequired — (String)

            The unique identifier for the export job.

          • JobStatusrequired — (String)

            The status of the export job. The job status is FAILED if Amazon Pinpoint wasn't able to process one or more pieces in the job.

            Possible values include:
            • "CREATED"
            • "PREPARING_FOR_INITIALIZATION"
            • "INITIALIZING"
            • "PROCESSING"
            • "PENDING_JOB"
            • "COMPLETING"
            • "COMPLETED"
            • "FAILING"
            • "FAILED"
          • TotalFailures — (Integer)

            The total number of endpoint definitions that weren't processed successfully (failed) by the export job, typically because an error, such as a syntax error, occurred.

          • TotalPieces — (Integer)

            The total number of pieces that must be processed to complete the export job. Each piece consists of an approximately equal portion of the endpoint definitions that are part of the export job.

          • TotalProcessed — (Integer)

            The total number of endpoint definitions that were processed by the export job.

          • Typerequired — (String)

            The job type. This value is EXPORT for export jobs.

        • NextToken — (String)

          The string to use in a subsequent request to get the next page of results in a paginated response. This value is null if there are no additional pages.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getGcmChannel(params = {}, callback) ⇒ AWS.Request

Retrieves information about the status and settings of the GCM channel for an application.

Service Reference:

Examples:

Calling the getGcmChannel operation

var params = {
  ApplicationId: 'STRING_VALUE' /* required */
};
pinpoint.getGcmChannel(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • GCMChannelResponse — (map)

        Provides information about the status and settings of the GCM channel for an application. The GCM channel enables Amazon Pinpoint to send push notifications through the Firebase Cloud Messaging (FCM), formerly Google Cloud Messaging (GCM), service.

        • ApplicationId — (String)

          The unique identifier for the application that the GCM channel applies to.

        • CreationDate — (String)

          The date and time when the GCM channel was enabled.

        • Credential — (String)

          The Web API Key, also referred to as an API_KEY or server key, that you received from Google to communicate with Google services.

        • DefaultAuthenticationMethod — (String)

          The default authentication method used for GCM. Values are either "TOKEN" or "KEY". Defaults to "KEY".

        • Enabled — (Boolean)

          Specifies whether the GCM channel is enabled for the application.

        • HasCredential — (Boolean)

          (Not used) This property is retained only for backward compatibility.

        • HasFcmServiceCredentials — (Boolean)

          Returns true if the JSON file provided by Google during registration process was used in the ServiceJson field of the request.

        • Id — (String)

          (Deprecated) An identifier for the GCM channel. This property is retained only for backward compatibility.

        • IsArchived — (Boolean)

          Specifies whether the GCM channel is archived.

        • LastModifiedBy — (String)

          The user who last modified the GCM channel.

        • LastModifiedDate — (String)

          The date and time when the GCM channel was last modified.

        • Platformrequired — (String)

          The type of messaging or notification platform for the channel. For the GCM channel, this value is GCM.

        • Version — (Integer)

          The current version of the GCM channel.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getImportJob(params = {}, callback) ⇒ AWS.Request

Retrieves information about the status and settings of a specific import job for an application.

Service Reference:

Examples:

Calling the getImportJob operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  JobId: 'STRING_VALUE' /* required */
};
pinpoint.getImportJob(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • JobId — (String)

      The unique identifier for the job.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • ImportJobResponse — (map)

        Provides information about the status and settings of a job that imports endpoint definitions from one or more files. The files can be stored in an Amazon Simple Storage Service (Amazon S3) bucket or uploaded directly from a computer by using the Amazon Pinpoint console.

        • ApplicationIdrequired — (String)

          The unique identifier for the application that's associated with the import job.

        • CompletedPieces — (Integer)

          The number of pieces that were processed successfully (completed) by the import job, as of the time of the request.

        • CompletionDate — (String)

          The date, in ISO 8601 format, when the import job was completed.

        • CreationDaterequired — (String)

          The date, in ISO 8601 format, when the import job was created.

        • Definitionrequired — (map)

          The resource settings that apply to the import job.

          • DefineSegment — (Boolean)

            Specifies whether the import job creates a segment that contains the endpoints, when the endpoint definitions are imported.

          • ExternalId — (String)

            (Deprecated) Your AWS account ID, which you assigned to an external ID key in an IAM trust policy. Amazon Pinpoint previously used this value to assume an IAM role when importing endpoint definitions, but we removed this requirement. We don't recommend use of external IDs for IAM roles that are assumed by Amazon Pinpoint.

          • Formatrequired — (String)

            The format of the files that contain the endpoint definitions to import. Valid values are: CSV, for comma-separated values format; and, JSON, for newline-delimited JSON format.

            If the files are stored in an Amazon S3 location and that location contains multiple files that use different formats, Amazon Pinpoint imports data only from the files that use the specified format.

            Possible values include:
            • "CSV"
            • "JSON"
          • RegisterEndpoints — (Boolean)

            Specifies whether the import job registers the endpoints with Amazon Pinpoint, when the endpoint definitions are imported.

          • RoleArnrequired — (String)

            The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that authorizes Amazon Pinpoint to access the Amazon S3 location to import endpoint definitions from.

          • S3Urlrequired — (String)

            The URL of the Amazon Simple Storage Service (Amazon S3) bucket that contains the endpoint definitions to import. This location can be a folder or a single file. If the location is a folder, Amazon Pinpoint imports endpoint definitions from the files in this location, including any subfolders that the folder contains.

            The URL should be in the following format: s3://bucket-name/folder-name/file-name. The location can end with the key for an individual object or a prefix that qualifies multiple objects.

          • SegmentId — (String)

            The identifier for the segment that the import job updates or adds endpoint definitions to, if the import job updates an existing segment.

          • SegmentName — (String)

            The custom name for the segment that's created by the import job, if the value of the DefineSegment property is true.

        • FailedPieces — (Integer)

          The number of pieces that weren't processed successfully (failed) by the import job, as of the time of the request.

        • Failures — (Array<String>)

          An array of entries, one for each of the first 100 entries that weren't processed successfully (failed) by the import job, if any.

        • Idrequired — (String)

          The unique identifier for the import job.

        • JobStatusrequired — (String)

          The status of the import job. The job status is FAILED if Amazon Pinpoint wasn't able to process one or more pieces in the job.

          Possible values include:
          • "CREATED"
          • "PREPARING_FOR_INITIALIZATION"
          • "INITIALIZING"
          • "PROCESSING"
          • "PENDING_JOB"
          • "COMPLETING"
          • "COMPLETED"
          • "FAILING"
          • "FAILED"
        • TotalFailures — (Integer)

          The total number of endpoint definitions that weren't processed successfully (failed) by the import job, typically because an error, such as a syntax error, occurred.

        • TotalPieces — (Integer)

          The total number of pieces that must be processed to complete the import job. Each piece consists of an approximately equal portion of the endpoint definitions that are part of the import job.

        • TotalProcessed — (Integer)

          The total number of endpoint definitions that were processed by the import job.

        • Typerequired — (String)

          The job type. This value is IMPORT for import jobs.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getImportJobs(params = {}, callback) ⇒ AWS.Request

Retrieves information about the status and settings of all the import jobs for an application.

Service Reference:

Examples:

Calling the getImportJobs operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  PageSize: 'STRING_VALUE',
  Token: 'STRING_VALUE'
};
pinpoint.getImportJobs(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • PageSize — (String)

      The maximum number of items to include in each page of a paginated response. This parameter is not supported for application, campaign, and journey metrics.

    • Token — (String)

      The NextToken string that specifies which page of results to return in a paginated response.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • ImportJobsResponse — (map)

        Provides information about the status and settings of all the import jobs that are associated with an application or segment. An import job is a job that imports endpoint definitions from one or more files.

        • Itemrequired — (Array<map>)

          An array of responses, one for each import job that's associated with the application (Import Jobs resource) or segment (Segment Import Jobs resource).

          • ApplicationIdrequired — (String)

            The unique identifier for the application that's associated with the import job.

          • CompletedPieces — (Integer)

            The number of pieces that were processed successfully (completed) by the import job, as of the time of the request.

          • CompletionDate — (String)

            The date, in ISO 8601 format, when the import job was completed.

          • CreationDaterequired — (String)

            The date, in ISO 8601 format, when the import job was created.

          • Definitionrequired — (map)

            The resource settings that apply to the import job.

            • DefineSegment — (Boolean)

              Specifies whether the import job creates a segment that contains the endpoints, when the endpoint definitions are imported.

            • ExternalId — (String)

              (Deprecated) Your AWS account ID, which you assigned to an external ID key in an IAM trust policy. Amazon Pinpoint previously used this value to assume an IAM role when importing endpoint definitions, but we removed this requirement. We don't recommend use of external IDs for IAM roles that are assumed by Amazon Pinpoint.

            • Formatrequired — (String)

              The format of the files that contain the endpoint definitions to import. Valid values are: CSV, for comma-separated values format; and, JSON, for newline-delimited JSON format.

              If the files are stored in an Amazon S3 location and that location contains multiple files that use different formats, Amazon Pinpoint imports data only from the files that use the specified format.

              Possible values include:
              • "CSV"
              • "JSON"
            • RegisterEndpoints — (Boolean)

              Specifies whether the import job registers the endpoints with Amazon Pinpoint, when the endpoint definitions are imported.

            • RoleArnrequired — (String)

              The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that authorizes Amazon Pinpoint to access the Amazon S3 location to import endpoint definitions from.

            • S3Urlrequired — (String)

              The URL of the Amazon Simple Storage Service (Amazon S3) bucket that contains the endpoint definitions to import. This location can be a folder or a single file. If the location is a folder, Amazon Pinpoint imports endpoint definitions from the files in this location, including any subfolders that the folder contains.

              The URL should be in the following format: s3://bucket-name/folder-name/file-name. The location can end with the key for an individual object or a prefix that qualifies multiple objects.

            • SegmentId — (String)

              The identifier for the segment that the import job updates or adds endpoint definitions to, if the import job updates an existing segment.

            • SegmentName — (String)

              The custom name for the segment that's created by the import job, if the value of the DefineSegment property is true.

          • FailedPieces — (Integer)

            The number of pieces that weren't processed successfully (failed) by the import job, as of the time of the request.

          • Failures — (Array<String>)

            An array of entries, one for each of the first 100 entries that weren't processed successfully (failed) by the import job, if any.

          • Idrequired — (String)

            The unique identifier for the import job.

          • JobStatusrequired — (String)

            The status of the import job. The job status is FAILED if Amazon Pinpoint wasn't able to process one or more pieces in the job.

            Possible values include:
            • "CREATED"
            • "PREPARING_FOR_INITIALIZATION"
            • "INITIALIZING"
            • "PROCESSING"
            • "PENDING_JOB"
            • "COMPLETING"
            • "COMPLETED"
            • "FAILING"
            • "FAILED"
          • TotalFailures — (Integer)

            The total number of endpoint definitions that weren't processed successfully (failed) by the import job, typically because an error, such as a syntax error, occurred.

          • TotalPieces — (Integer)

            The total number of pieces that must be processed to complete the import job. Each piece consists of an approximately equal portion of the endpoint definitions that are part of the import job.

          • TotalProcessed — (Integer)

            The total number of endpoint definitions that were processed by the import job.

          • Typerequired — (String)

            The job type. This value is IMPORT for import jobs.

        • NextToken — (String)

          The string to use in a subsequent request to get the next page of results in a paginated response. This value is null if there are no additional pages.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getInAppMessages(params = {}, callback) ⇒ AWS.Request

Retrieves the in-app messages targeted for the provided endpoint ID.

Service Reference:

Examples:

Calling the getInAppMessages operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  EndpointId: 'STRING_VALUE' /* required */
};
pinpoint.getInAppMessages(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • EndpointId — (String)

      The unique identifier for the endpoint.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • InAppMessagesResponse — (map)

        Get in-app messages response object.

        • InAppMessageCampaigns — (Array<map>)

          List of targeted in-app message campaigns.

          • CampaignId — (String)

            Campaign id of the corresponding campaign.

          • DailyCap — (Integer)

            Daily cap which controls the number of times any in-app messages can be shown to the endpoint during a day.

          • InAppMessage — (map)

            In-app message content with all fields required for rendering an in-app message.

            • Content — (Array<map>)

              In-app message content.

              • BackgroundColor — (String)

                The background color for the message.

              • BodyConfig — (map)

                The configuration for the message body.

                • Alignmentrequired — (String)

                  The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

                  Possible values include:
                  • "LEFT"
                  • "CENTER"
                  • "RIGHT"
                • Bodyrequired — (String)

                  Message Body.

                • TextColorrequired — (String)

                  The text color.

              • HeaderConfig — (map)

                The configuration for the message header.

                • Alignmentrequired — (String)

                  The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

                  Possible values include:
                  • "LEFT"
                  • "CENTER"
                  • "RIGHT"
                • Headerrequired — (String)

                  Message Header.

                • TextColorrequired — (String)

                  The text color.

              • ImageUrl — (String)

                The image url for the background of message.

              • PrimaryBtn — (map)

                The first button inside the message.

                • Android — (map)

                  Default button content.

                  • ButtonActionrequired — (String)

                    Action triggered by the button.

                    Possible values include:
                    • "LINK"
                    • "DEEP_LINK"
                    • "CLOSE"
                  • Link — (String)

                    Button destination.

                • DefaultConfig — (map)

                  Default button content.

                  • BackgroundColor — (String)

                    The background color of the button.

                  • BorderRadius — (Integer)

                    The border radius of the button.

                  • ButtonActionrequired — (String)

                    Action triggered by the button.

                    Possible values include:
                    • "LINK"
                    • "DEEP_LINK"
                    • "CLOSE"
                  • Link — (String)

                    Button destination.

                  • Textrequired — (String)

                    Button text.

                  • TextColor — (String)

                    The text color of the button.

                • IOS — (map)

                  Default button content.

                  • ButtonActionrequired — (String)

                    Action triggered by the button.

                    Possible values include:
                    • "LINK"
                    • "DEEP_LINK"
                    • "CLOSE"
                  • Link — (String)

                    Button destination.

                • Web — (map)

                  Default button content.

                  • ButtonActionrequired — (String)

                    Action triggered by the button.

                    Possible values include:
                    • "LINK"
                    • "DEEP_LINK"
                    • "CLOSE"
                  • Link — (String)

                    Button destination.

              • SecondaryBtn — (map)

                The second button inside message.

                • Android — (map)

                  Default button content.

                  • ButtonActionrequired — (String)

                    Action triggered by the button.

                    Possible values include:
                    • "LINK"
                    • "DEEP_LINK"
                    • "CLOSE"
                  • Link — (String)

                    Button destination.

                • DefaultConfig — (map)

                  Default button content.

                  • BackgroundColor — (String)

                    The background color of the button.

                  • BorderRadius — (Integer)

                    The border radius of the button.

                  • ButtonActionrequired — (String)

                    Action triggered by the button.

                    Possible values include:
                    • "LINK"
                    • "DEEP_LINK"
                    • "CLOSE"
                  • Link — (String)

                    Button destination.

                  • Textrequired — (String)

                    Button text.

                  • TextColor — (String)

                    The text color of the button.

                • IOS — (map)

                  Default button content.

                  • ButtonActionrequired — (String)

                    Action triggered by the button.

                    Possible values include:
                    • "LINK"
                    • "DEEP_LINK"
                    • "CLOSE"
                  • Link — (String)

                    Button destination.

                • Web — (map)

                  Default button content.

                  • ButtonActionrequired — (String)

                    Action triggered by the button.

                    Possible values include:
                    • "LINK"
                    • "DEEP_LINK"
                    • "CLOSE"
                  • Link — (String)

                    Button destination.

            • CustomConfig — (map<String>)

              Custom config to be sent to SDK.

            • Layout — (String)

              The layout of the message.

              Possible values include:
              • "BOTTOM_BANNER"
              • "TOP_BANNER"
              • "OVERLAYS"
              • "MOBILE_FEED"
              • "MIDDLE_BANNER"
              • "CAROUSEL"
          • Priority — (Integer)

            Priority of the in-app message.

          • Schedule — (map)

            Schedule of the campaign.

            • EndDate — (String)

              The scheduled time after which the in-app message should not be shown. Timestamp is in ISO 8601 format.

            • EventFilter — (map)

              The event filter the SDK has to use to show the in-app message in the application.

              • Dimensionsrequired — (map)

                The dimension settings of the event filter for the campaign.

                • Attributes — (map<map>)

                  One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                  • AttributeType — (String)

                    The type of segment dimension to use. Valid values are:

                    • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                    • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                    • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                    • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                    • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                    • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                    • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                    • Possible values include:
                      • "INCLUSIVE"
                      • "EXCLUSIVE"
                      • "CONTAINS"
                      • "BEFORE"
                      • "AFTER"
                      • "ON"
                      • "BETWEEN"
                    • Valuesrequired — (Array<String>)

                      The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                  • EventType — (map)

                    The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                    • DimensionType — (String)

                      The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                      Possible values include:
                      • "INCLUSIVE"
                      • "EXCLUSIVE"
                    • Valuesrequired — (Array<String>)

                      The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                  • Metrics — (map<map>)

                    One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                    • ComparisonOperatorrequired — (String)

                      The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                    • Valuerequired — (Float)

                      The value to compare.

                • FilterTyperequired — (String)

                  The type of event that causes the campaign to be sent. Valid values are: SYSTEM, sends the campaign when a system event occurs; and, ENDPOINT, sends the campaign when an endpoint event (Events resource) occurs.

                  Possible values include:
                  • "SYSTEM"
                  • "ENDPOINT"
              • QuietTime — (map)

                Time during which the in-app message should not be shown to the user.

                • End — (String)

                  The specific time when quiet time ends. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

                • Start — (String)

                  The specific time when quiet time begins. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

            • SessionCap — (Integer)

              Session cap which controls the number of times an in-app message can be shown to the endpoint during an application session.

            • TotalCap — (Integer)

              Total cap which controls the number of times an in-app message can be shown to the endpoint.

            • TreatmentId — (String)

              Treatment id of the campaign.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getInAppTemplate(params = {}, callback) ⇒ AWS.Request

Retrieves the content and settings of a message template for messages sent through the in-app channel.

Service Reference:

Examples:

Calling the getInAppTemplate operation

var params = {
  TemplateName: 'STRING_VALUE', /* required */
  Version: 'STRING_VALUE'
};
pinpoint.getInAppTemplate(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • TemplateName — (String)

      The name of the message template. A template name must start with an alphanumeric character and can contain a maximum of 128 characters. The characters can be alphanumeric characters, underscores (_), or hyphens (-). Template names are case sensitive.

    • Version — (String)

      The unique identifier for the version of the message template to update, retrieve information about, or delete. To retrieve identifiers and other information for all the versions of a template, use the Template Versions resource.

      If specified, this value must match the identifier for an existing template version. If specified for an update operation, this value must match the identifier for the latest existing version of the template. This restriction helps ensure that race conditions don't occur.

      If you don't specify a value for this parameter, Amazon Pinpoint does the following:

      • For a get operation, retrieves information about the active version of the template.

      • For an update operation, saves the updates to (overwrites) the latest existing version of the template, if the create-new-version parameter isn't used or is set to false.

      • For a delete operation, deletes the template, including all versions of the template.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • InAppTemplateResponse — (map)

        In-App Template Response.

        • Arn — (String)

          The resource arn of the template.

        • Content — (Array<map>)

          The content of the message, can include up to 5 modals. Each modal must contain a message, a header, and background color. ImageUrl and buttons are optional.

          • BackgroundColor — (String)

            The background color for the message.

          • BodyConfig — (map)

            The configuration for the message body.

            • Alignmentrequired — (String)

              The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

              Possible values include:
              • "LEFT"
              • "CENTER"
              • "RIGHT"
            • Bodyrequired — (String)

              Message Body.

            • TextColorrequired — (String)

              The text color.

          • HeaderConfig — (map)

            The configuration for the message header.

            • Alignmentrequired — (String)

              The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

              Possible values include:
              • "LEFT"
              • "CENTER"
              • "RIGHT"
            • Headerrequired — (String)

              Message Header.

            • TextColorrequired — (String)

              The text color.

          • ImageUrl — (String)

            The image url for the background of message.

          • PrimaryBtn — (map)

            The first button inside the message.

            • Android — (map)

              Default button content.

              • ButtonActionrequired — (String)

                Action triggered by the button.

                Possible values include:
                • "LINK"
                • "DEEP_LINK"
                • "CLOSE"
              • Link — (String)

                Button destination.

            • DefaultConfig — (map)

              Default button content.

              • BackgroundColor — (String)

                The background color of the button.

              • BorderRadius — (Integer)

                The border radius of the button.

              • ButtonActionrequired — (String)

                Action triggered by the button.

                Possible values include:
                • "LINK"
                • "DEEP_LINK"
                • "CLOSE"
              • Link — (String)

                Button destination.

              • Textrequired — (String)

                Button text.

              • TextColor — (String)

                The text color of the button.

            • IOS — (map)

              Default button content.

              • ButtonActionrequired — (String)

                Action triggered by the button.

                Possible values include:
                • "LINK"
                • "DEEP_LINK"
                • "CLOSE"
              • Link — (String)

                Button destination.

            • Web — (map)

              Default button content.

              • ButtonActionrequired — (String)

                Action triggered by the button.

                Possible values include:
                • "LINK"
                • "DEEP_LINK"
                • "CLOSE"
              • Link — (String)

                Button destination.

          • SecondaryBtn — (map)

            The second button inside message.

            • Android — (map)

              Default button content.

              • ButtonActionrequired — (String)

                Action triggered by the button.

                Possible values include:
                • "LINK"
                • "DEEP_LINK"
                • "CLOSE"
              • Link — (String)

                Button destination.

            • DefaultConfig — (map)

              Default button content.

              • BackgroundColor — (String)

                The background color of the button.

              • BorderRadius — (Integer)

                The border radius of the button.

              • ButtonActionrequired — (String)

                Action triggered by the button.

                Possible values include:
                • "LINK"
                • "DEEP_LINK"
                • "CLOSE"
              • Link — (String)

                Button destination.

              • Textrequired — (String)

                Button text.

              • TextColor — (String)

                The text color of the button.

            • IOS — (map)

              Default button content.

              • ButtonActionrequired — (String)

                Action triggered by the button.

                Possible values include:
                • "LINK"
                • "DEEP_LINK"
                • "CLOSE"
              • Link — (String)

                Button destination.

            • Web — (map)

              Default button content.

              • ButtonActionrequired — (String)

                Action triggered by the button.

                Possible values include:
                • "LINK"
                • "DEEP_LINK"
                • "CLOSE"
              • Link — (String)

                Button destination.

        • CreationDaterequired — (String)

          The creation date of the template.

        • CustomConfig — (map<String>)

          Custom config to be sent to client.

        • LastModifiedDaterequired — (String)

          The last modified date of the template.

        • Layout — (String)

          The layout of the message.

          Possible values include:
          • "BOTTOM_BANNER"
          • "TOP_BANNER"
          • "OVERLAYS"
          • "MOBILE_FEED"
          • "MIDDLE_BANNER"
          • "CAROUSEL"
        • tags — (map<String>)

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

        • TemplateDescription — (String)

          The description of the template.

        • TemplateNamerequired — (String)

          The name of the template.

        • TemplateTyperequired — (String)

          The type of the template.

          Possible values include:
          • "EMAIL"
          • "SMS"
          • "VOICE"
          • "PUSH"
          • "INAPP"
        • Version — (String)

          The version id of the template.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getJourney(params = {}, callback) ⇒ AWS.Request

Retrieves information about the status, configuration, and other settings for a journey.

Service Reference:

Examples:

Calling the getJourney operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  JourneyId: 'STRING_VALUE' /* required */
};
pinpoint.getJourney(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • JourneyId — (String)

      The unique identifier for the journey.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • JourneyResponse — (map)

        Provides information about the status, configuration, and other settings for a journey.

        • Activities — (map<map>)

          A map that contains a set of Activity objects, one object for each activity in the journey. For each Activity object, the key is the unique identifier (string) for an activity and the value is the settings for the activity.

          • CUSTOM — (map)

            The settings for a custom message activity. This type of activity calls an AWS Lambda function or web hook that sends messages to participants.

            • DeliveryUri — (String)

              The destination to send the campaign or treatment to. This value can be one of the following:

              • The name or Amazon Resource Name (ARN) of an AWS Lambda function to invoke to handle delivery of the campaign or treatment.

              • The URL for a web application or service that supports HTTPS and can receive the message. The URL has to be a full URL, including the HTTPS protocol.

            • EndpointTypes — (Array<String>)

              The types of endpoints to send the custom message to. Each valid value maps to a type of channel that you can associate with an endpoint by using the ChannelType property of an endpoint.

            • MessageConfig — (map)

              Specifies the message data included in a custom channel message that's sent to participants in a journey.

              • Data — (String)

                The message content that's passed to an AWS Lambda function or to a web hook.

            • NextActivity — (String)

              The unique identifier for the next activity to perform, after Amazon Pinpoint calls the AWS Lambda function or web hook.

            • TemplateName — (String)

              The name of the custom message template to use for the message. If specified, this value must match the name of an existing message template.

            • TemplateVersion — (String)

              The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

              If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

          • ConditionalSplit — (map)

            The settings for a yes/no split activity. This type of activity sends participants down one of two paths in a journey, based on conditions that you specify.

            • Condition — (map)

              The conditions that define the paths for the activity, and the relationship between the conditions.

              • Conditions — (Array<map>)

                The conditions to evaluate for the activity.

                • EventCondition — (map)

                  The dimension settings for the event that's associated with the activity.

                  • Dimensions — (map)

                    The dimensions for the event filter to use for the activity.

                    • Attributes — (map<map>)

                      One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                      • AttributeType — (String)

                        The type of segment dimension to use. Valid values are:

                        • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                        • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                        • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                        • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                        • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                        • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                        • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                        • Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                          • "CONTAINS"
                          • "BEFORE"
                          • "AFTER"
                          • "ON"
                          • "BETWEEN"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                      • EventType — (map)

                        The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • Metrics — (map<map>)

                        One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                        • ComparisonOperatorrequired — (String)

                          The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                        • Valuerequired — (Float)

                          The value to compare.

                    • MessageActivity — (String)

                      The message identifier (message_id) for the message to use when determining whether message events meet the condition.

                  • SegmentCondition — (map)

                    The segment that's associated with the activity.

                    • SegmentIdrequired — (String)

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

                  • SegmentDimensions — (map)

                    The dimension settings for the segment that's associated with the activity.

                    • Attributes — (map<map>)

                      One or more custom attributes to use as criteria for the segment.

                      • AttributeType — (String)

                        The type of segment dimension to use. Valid values are:

                        • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                        • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                        • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                        • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                        • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                        • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                        • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                        • Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                          • "CONTAINS"
                          • "BEFORE"
                          • "AFTER"
                          • "ON"
                          • "BETWEEN"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                      • Behavior — (map)

                        The behavior-based criteria, such as how recently users have used your app, for the segment.

                        • Recency — (map)

                          The dimension settings that are based on how recently an endpoint was active.

                          • Durationrequired — (String)

                            The duration to use when determining whether an endpoint is active or inactive.

                            Possible values include:
                            • "HR_24"
                            • "DAY_7"
                            • "DAY_14"
                            • "DAY_30"
                          • RecencyTyperequired — (String)

                            The type of recency dimension to use for the segment. Valid values are: ACTIVE, endpoints that were active within the specified duration are included in the segment; and, INACTIVE, endpoints that weren't active within the specified duration are included in the segment.

                            Possible values include:
                            • "ACTIVE"
                            • "INACTIVE"
                      • Demographic — (map)

                        The demographic-based criteria, such as device platform, for the segment.

                        • AppVersion — (map)

                          The app version criteria for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • Channel — (map)

                          The channel criteria for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • DeviceType — (map)

                          The device type criteria for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • Make — (map)

                          The device make criteria for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • Model — (map)

                          The device model criteria for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • Platform — (map)

                          The device platform criteria for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • Location — (map)

                        The location-based criteria, such as region or GPS coordinates, for the segment.

                        • Country — (map)

                          The country or region code, in ISO 3166-1 alpha-2 format, for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • GPSPoint — (map)

                          The GPS location and range for the segment.

                          • Coordinatesrequired — (map)

                            The GPS coordinates to measure distance from.

                            • Latituderequired — (Float)

                              The latitude coordinate of the location.

                            • Longituderequired — (Float)

                              The longitude coordinate of the location.

                          • RangeInKilometers — (Float)

                            The range, in kilometers, from the GPS coordinates.

                      • Metrics — (map<map>)

                        One or more custom metrics to use as criteria for the segment.

                        • ComparisonOperatorrequired — (String)

                          The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                        • Valuerequired — (Float)

                          The value to compare.

                      • UserAttributes — (map<map>)

                        One or more custom user attributes to use as criteria for the segment.

                        • AttributeType — (String)

                          The type of segment dimension to use. Valid values are:

                          • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                          • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                          • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                          • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                          • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                          • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                          • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                          • Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                            • "CONTAINS"
                            • "BEFORE"
                            • "AFTER"
                            • "ON"
                            • "BETWEEN"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                    • Operator — (String)

                      Specifies how to handle multiple conditions for the activity. For example, if you specify two conditions for an activity, whether both or only one of the conditions must be met for the activity to be performed.

                      Possible values include:
                      • "ALL"
                      • "ANY"
                  • EvaluationWaitTime — (map)

                    The amount of time to wait before determining whether the conditions are met, or the date and time when Amazon Pinpoint determines whether the conditions are met.

                    • WaitFor — (String)

                      The amount of time to wait, as a duration in ISO 8601 format, before determining whether the activity's conditions have been met or moving participants to the next activity in the journey.

                    • WaitUntil — (String)

                      The date and time, in ISO 8601 format, when Amazon Pinpoint determines whether the activity's conditions have been met or the activity moves participants to the next activity in the journey.

                  • FalseActivity — (String)

                    The unique identifier for the activity to perform if the conditions aren't met.

                  • TrueActivity — (String)

                    The unique identifier for the activity to perform if the conditions are met.

                • Description — (String)

                  The custom description of the activity.

                • EMAIL — (map)

                  The settings for an email activity. This type of activity sends an email message to participants.

                  • MessageConfig — (map)

                    Specifies the sender address for an email message that's sent to participants in the journey.

                    • FromAddress — (String)

                      The verified email address to send the email message from. The default address is the FromAddress specified for the email channel for the application.

                  • NextActivity — (String)

                    The unique identifier for the next activity to perform, after the message is sent.

                  • TemplateName — (String)

                    The name of the email message template to use for the message. If specified, this value must match the name of an existing message template.

                  • TemplateVersion — (String)

                    The unique identifier for the version of the email template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                    If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

                • Holdout — (map)

                  The settings for a holdout activity. This type of activity stops a journey for a specified percentage of participants.

                  • NextActivity — (String)

                    The unique identifier for the next activity to perform, after performing the holdout activity.

                  • Percentagerequired — (Integer)

                    The percentage of participants who shouldn't continue the journey.

                    To determine which participants are held out, Amazon Pinpoint applies a probability-based algorithm to the percentage that you specify. Therefore, the actual percentage of participants who are held out may not be equal to the percentage that you specify.

                • MultiCondition — (map)

                  The settings for a multivariate split activity. This type of activity sends participants down one of as many as five paths (including a default Else path) in a journey, based on conditions that you specify.

                  • Branches — (Array<map>)

                    The paths for the activity, including the conditions for entering each path and the activity to perform for each path.

                    • Condition — (map)

                      The condition to evaluate for the activity path.

                      • EventCondition — (map)

                        The dimension settings for the event that's associated with the activity.

                        • Dimensions — (map)

                          The dimensions for the event filter to use for the activity.

                          • Attributes — (map<map>)

                            One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                            • AttributeType — (String)

                              The type of segment dimension to use. Valid values are:

                              • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                              • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                              • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                              • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                              • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                              • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                              • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                              • Possible values include:
                                • "INCLUSIVE"
                                • "EXCLUSIVE"
                                • "CONTAINS"
                                • "BEFORE"
                                • "AFTER"
                                • "ON"
                                • "BETWEEN"
                              • Valuesrequired — (Array<String>)

                                The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                            • EventType — (map)

                              The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                              • DimensionType — (String)

                                The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                Possible values include:
                                • "INCLUSIVE"
                                • "EXCLUSIVE"
                              • Valuesrequired — (Array<String>)

                                The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                            • Metrics — (map<map>)

                              One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                              • ComparisonOperatorrequired — (String)

                                The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                              • Valuerequired — (Float)

                                The value to compare.

                          • MessageActivity — (String)

                            The message identifier (message_id) for the message to use when determining whether message events meet the condition.

                        • SegmentCondition — (map)

                          The segment that's associated with the activity.

                          • SegmentIdrequired — (String)

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

                        • SegmentDimensions — (map)

                          The dimension settings for the segment that's associated with the activity.

                          • Attributes — (map<map>)

                            One or more custom attributes to use as criteria for the segment.

                            • AttributeType — (String)

                              The type of segment dimension to use. Valid values are:

                              • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                              • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                              • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                              • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                              • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                              • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                              • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                              • Possible values include:
                                • "INCLUSIVE"
                                • "EXCLUSIVE"
                                • "CONTAINS"
                                • "BEFORE"
                                • "AFTER"
                                • "ON"
                                • "BETWEEN"
                              • Valuesrequired — (Array<String>)

                                The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                            • Behavior — (map)

                              The behavior-based criteria, such as how recently users have used your app, for the segment.

                              • Recency — (map)

                                The dimension settings that are based on how recently an endpoint was active.

                                • Durationrequired — (String)

                                  The duration to use when determining whether an endpoint is active or inactive.

                                  Possible values include:
                                  • "HR_24"
                                  • "DAY_7"
                                  • "DAY_14"
                                  • "DAY_30"
                                • RecencyTyperequired — (String)

                                  The type of recency dimension to use for the segment. Valid values are: ACTIVE, endpoints that were active within the specified duration are included in the segment; and, INACTIVE, endpoints that weren't active within the specified duration are included in the segment.

                                  Possible values include:
                                  • "ACTIVE"
                                  • "INACTIVE"
                            • Demographic — (map)

                              The demographic-based criteria, such as device platform, for the segment.

                              • AppVersion — (map)

                                The app version criteria for the segment.

                                • DimensionType — (String)

                                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                  Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                              • Channel — (map)

                                The channel criteria for the segment.

                                • DimensionType — (String)

                                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                  Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                              • DeviceType — (map)

                                The device type criteria for the segment.

                                • DimensionType — (String)

                                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                  Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                              • Make — (map)

                                The device make criteria for the segment.

                                • DimensionType — (String)

                                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                  Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                              • Model — (map)

                                The device model criteria for the segment.

                                • DimensionType — (String)

                                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                  Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                              • Platform — (map)

                                The device platform criteria for the segment.

                                • DimensionType — (String)

                                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                  Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                            • Location — (map)

                              The location-based criteria, such as region or GPS coordinates, for the segment.

                              • Country — (map)

                                The country or region code, in ISO 3166-1 alpha-2 format, for the segment.

                                • DimensionType — (String)

                                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                  Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                              • GPSPoint — (map)

                                The GPS location and range for the segment.

                                • Coordinatesrequired — (map)

                                  The GPS coordinates to measure distance from.

                                  • Latituderequired — (Float)

                                    The latitude coordinate of the location.

                                  • Longituderequired — (Float)

                                    The longitude coordinate of the location.

                                • RangeInKilometers — (Float)

                                  The range, in kilometers, from the GPS coordinates.

                            • Metrics — (map<map>)

                              One or more custom metrics to use as criteria for the segment.

                              • ComparisonOperatorrequired — (String)

                                The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                              • Valuerequired — (Float)

                                The value to compare.

                            • UserAttributes — (map<map>)

                              One or more custom user attributes to use as criteria for the segment.

                              • AttributeType — (String)

                                The type of segment dimension to use. Valid values are:

                                • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                                • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                                • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                                • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                                • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                                • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                                • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                                • Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                  • "CONTAINS"
                                  • "BEFORE"
                                  • "AFTER"
                                  • "ON"
                                  • "BETWEEN"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                          • NextActivity — (String)

                            The unique identifier for the next activity to perform, after completing the activity for the path.

                        • DefaultActivity — (String)

                          The unique identifier for the activity to perform for participants who don't meet any of the conditions specified for other paths in the activity.

                        • EvaluationWaitTime — (map)

                          The amount of time to wait or the date and time when Amazon Pinpoint determines whether the conditions are met.

                          • WaitFor — (String)

                            The amount of time to wait, as a duration in ISO 8601 format, before determining whether the activity's conditions have been met or moving participants to the next activity in the journey.

                          • WaitUntil — (String)

                            The date and time, in ISO 8601 format, when Amazon Pinpoint determines whether the activity's conditions have been met or the activity moves participants to the next activity in the journey.

                      • PUSH — (map)

                        The settings for a push notification activity. This type of activity sends a push notification to participants.

                        • MessageConfig — (map)

                          Specifies the time to live (TTL) value for push notifications that are sent to participants in a journey.

                          • TimeToLive — (String)

                            The number of seconds that the push notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                            This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

                        • NextActivity — (String)

                          The unique identifier for the next activity to perform, after the message is sent.

                        • TemplateName — (String)

                          The name of the push notification template to use for the message. If specified, this value must match the name of an existing message template.

                        • TemplateVersion — (String)

                          The unique identifier for the version of the push notification template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                          If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

                      • RandomSplit — (map)

                        The settings for a random split activity. This type of activity randomly sends specified percentages of participants down one of as many as five paths in a journey, based on conditions that you specify.

                        • Branches — (Array<map>)

                          The paths for the activity, including the percentage of participants to enter each path and the activity to perform for each path.

                          • NextActivity — (String)

                            The unique identifier for the next activity to perform, after completing the activity for the path.

                          • Percentage — (Integer)

                            The percentage of participants to send down the activity path.

                            To determine which participants are sent down each path, Amazon Pinpoint applies a probability-based algorithm to the percentages that you specify for the paths. Therefore, the actual percentage of participants who are sent down a path may not be equal to the percentage that you specify.

                      • SMS — (map)

                        The settings for an SMS activity. This type of activity sends a text message to participants.

                        • MessageConfig — (map)

                          Specifies the sender ID and message type for an SMS message that's sent to participants in a journey.

                          • MessageType — (String)

                            The SMS message type. Valid values are TRANSACTIONAL (for messages that are critical or time-sensitive, such as a one-time passwords) and PROMOTIONAL (for messsages that aren't critical or time-sensitive, such as marketing messages).

                            Possible values include:
                            • "TRANSACTIONAL"
                            • "PROMOTIONAL"
                          • OriginationNumber — (String)

                            The long code to send the SMS message from. This value should be one of the dedicated long codes that's assigned to your AWS account. Although it isn't required, we recommend that you specify the long code using an E.164 format to ensure prompt and accurate delivery of the message. For example, +12065550100.

                          • SenderId — (String)

                            The sender ID to display as the sender of the message on a recipient's device. Support for sender IDs varies by country or region. For more information, see Supported Countries and Regions in the Amazon Pinpoint User Guide.

                          • EntityId — (String)

                            The entity ID or Principal Entity (PE) id received from the regulatory body for sending SMS in your country.

                          • TemplateId — (String)

                            The template ID received from the regulatory body for sending SMS in your country.

                        • NextActivity — (String)

                          The unique identifier for the next activity to perform, after the message is sent.

                        • TemplateName — (String)

                          The name of the SMS message template to use for the message. If specified, this value must match the name of an existing message template.

                        • TemplateVersion — (String)

                          The unique identifier for the version of the SMS template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                          If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

                      • Wait — (map)

                        The settings for a wait activity. This type of activity waits for a certain amount of time or until a specific date and time before moving participants to the next activity in a journey.

                        • NextActivity — (String)

                          The unique identifier for the next activity to perform, after performing the wait activity.

                        • WaitTime — (map)

                          The amount of time to wait or the date and time when the activity moves participants to the next activity in the journey.

                          • WaitFor — (String)

                            The amount of time to wait, as a duration in ISO 8601 format, before determining whether the activity's conditions have been met or moving participants to the next activity in the journey.

                          • WaitUntil — (String)

                            The date and time, in ISO 8601 format, when Amazon Pinpoint determines whether the activity's conditions have been met or the activity moves participants to the next activity in the journey.

                      • ContactCenter — (map)

                        The settings for a connect activity. This type of activity initiates a contact center call to participants.

                        • NextActivity — (String)

                          The unique identifier for the next activity to perform after the this activity.

                    • ApplicationIdrequired — (String)

                      The unique identifier for the application that the journey applies to.

                    • CreationDate — (String)

                      The date, in ISO 8601 format, when the journey was created.

                    • Idrequired — (String)

                      The unique identifier for the journey.

                    • LastModifiedDate — (String)

                      The date, in ISO 8601 format, when the journey was last modified.

                    • Limits — (map)

                      The messaging and entry limits for the journey.

                      • DailyCap — (Integer)

                        The maximum number of messages that the journey can send to a single participant during a 24-hour period. The maximum value is 100.

                      • EndpointReentryCap — (Integer)

                        The maximum number of times that a participant can enter the journey. The maximum value is 100. To allow participants to enter the journey an unlimited number of times, set this value to 0.

                      • MessagesPerSecond — (Integer)

                        The maximum number of messages that the journey can send each second.

                      • EndpointReentryInterval — (String)

                        Minimum time that must pass before an endpoint can re-enter a given journey. The duration should use an ISO 8601 format, such as PT1H.

                      • TimeframeCap — (map)

                        The number of messages that an endpoint can receive during the specified timeframe.

                        • Cap — (Integer)

                          The maximum number of messages that all journeys can send to an endpoint during the specified timeframe. The maximum value is 100. If set to 0, this limit will not apply.

                        • Days — (Integer)

                          The length of the timeframe in days. The maximum value is 30. If set to 0, this limit will not apply.

                      • TotalCap — (Integer)

                        The maximum number of messages a journey can sent to a single endpoint. The maximum value is 100. If set to 0, this limit will not apply.

                    • LocalTime — (Boolean)

                      Specifies whether the journey's scheduled start and end times use each participant's local time. If this value is true, the schedule uses each participant's local time.

                    • Namerequired — (String)

                      The name of the journey.

                    • QuietTime — (map)

                      The quiet time settings for the journey. Quiet time is a specific time range when a journey doesn't send messages to participants, if all the following conditions are met:

                      • The EndpointDemographic.Timezone property of the endpoint for the participant is set to a valid value.

                      • The current time in the participant's time zone is later than or equal to the time specified by the QuietTime.Start property for the journey.

                      • The current time in the participant's time zone is earlier than or equal to the time specified by the QuietTime.End property for the journey.

                      If any of the preceding conditions isn't met, the participant will receive messages from the journey, even if quiet time is enabled.

                      • End — (String)

                        The specific time when quiet time ends. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

                      • Start — (String)

                        The specific time when quiet time begins. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

                    • RefreshFrequency — (String)

                      The frequency with which Amazon Pinpoint evaluates segment and event data for the journey, as a duration in ISO 8601 format.

                    • Schedule — (map)

                      The schedule settings for the journey.

                      • EndTime — (Date)

                        The scheduled time, in ISO 8601 format, when the journey ended or will end.

                      • StartTime — (Date)

                        The scheduled time, in ISO 8601 format, when the journey began or will begin.

                      • Timezone — (String)

                        The starting UTC offset for the journey schedule, if the value of the journey's LocalTime property is true. Valid values are: UTC, UTC+01, UTC+02, UTC+03, UTC+03:30, UTC+04, UTC+04:30, UTC+05, UTC+05:30, UTC+05:45, UTC+06, UTC+06:30, UTC+07, UTC+08, UTC+08:45, UTC+09, UTC+09:30, UTC+10, UTC+10:30, UTC+11, UTC+12, UTC+12:45, UTC+13, UTC+13:45, UTC-02, UTC-02:30, UTC-03, UTC-03:30, UTC-04, UTC-05, UTC-06, UTC-07, UTC-08, UTC-09, UTC-09:30, UTC-10, and UTC-11.

                    • StartActivity — (String)

                      The unique identifier for the first activity in the journey.

                    • StartCondition — (map)

                      The segment that defines which users are participants in the journey.

                      • Description — (String)

                        The custom description of the condition.

                      • EventStartCondition — (map)

                        Specifies the settings for an event that causes a journey activity to start.

                        • EventFilter — (map)

                          Specifies the settings for an event that causes a campaign to be sent or a journey activity to be performed.

                          • Dimensionsrequired — (map)

                            The dimensions for the event filter to use for the campaign or the journey activity.

                            • Attributes — (map<map>)

                              One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                              • AttributeType — (String)

                                The type of segment dimension to use. Valid values are:

                                • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                                • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                                • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                                • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                                • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                                • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                                • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                                • Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                  • "CONTAINS"
                                  • "BEFORE"
                                  • "AFTER"
                                  • "ON"
                                  • "BETWEEN"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                              • EventType — (map)

                                The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                                • DimensionType — (String)

                                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                  Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                              • Metrics — (map<map>)

                                One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                                • ComparisonOperatorrequired — (String)

                                  The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                                • Valuerequired — (Float)

                                  The value to compare.

                            • FilterTyperequired — (String)

                              The type of event that causes the campaign to be sent or the journey activity to be performed. Valid values are: SYSTEM, sends the campaign or performs the activity when a system event occurs; and, ENDPOINT, sends the campaign or performs the activity when an endpoint event (Events resource) occurs.

                              Possible values include:
                              • "SYSTEM"
                              • "ENDPOINT"
                          • SegmentId — (String)
                        • SegmentStartCondition — (map)

                          The segment that's associated with the first activity in the journey. This segment determines which users are participants in the journey.

                          • SegmentIdrequired — (String)

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

                      • State — (String)

                        The current status of the journey. Possible values are:

                        • DRAFT - The journey is being developed and hasn't been published yet.

                        • ACTIVE - The journey has been developed and published. Depending on the journey's schedule, the journey may currently be running or scheduled to start running at a later time. If a journey's status is ACTIVE, you can't add, change, or remove activities from it.

                        • COMPLETED - The journey has been published and has finished running. All participants have entered the journey and no participants are waiting to complete the journey or any activities in the journey.

                        • CANCELLED - The journey has been stopped. If a journey's status is CANCELLED, you can't add, change, or remove activities or segment settings from the journey.

                        • CLOSED - The journey has been published and has started running. It may have also passed its scheduled end time, or passed its scheduled start time and a refresh frequency hasn't been specified for it. If a journey's status is CLOSED, you can't add participants to it, and no existing participants can enter the journey for the first time. However, any existing participants who are currently waiting to start an activity may continue the journey.

                        Possible values include:
                        • "DRAFT"
                        • "ACTIVE"
                        • "COMPLETED"
                        • "CANCELLED"
                        • "CLOSED"
                        • "PAUSED"
                      • tags — (map<String>)

                        This object is not used or supported.

                      • WaitForQuietTime — (Boolean)

                        Indicates whether endpoints in quiet hours should enter a wait activity until quiet hours have elapsed.

                      • RefreshOnSegmentUpdate — (Boolean)

                        Indicates whether the journey participants should be refreshed when a segment is updated.

                      • JourneyChannelSettings — (map)

                        The channel-specific configurations for the journey.

                        • ConnectCampaignArn — (String)

                          Amazon Resource Name (ARN) of the Connect Campaign.

                        • ConnectCampaignExecutionRoleArn — (String)

                          IAM role ARN to be assumed when invoking Connect campaign execution APIs for dialing.

                      • SendingSchedule — (Boolean)

                        Indicates if journey has Advance Quiet Time enabled. This flag should be set to true in order to allow using OpenHours and ClosedDays.

                      • OpenHours — (map)

                        The time when a journey can send messages. QuietTime should be configured first and SendingSchedule should be set to true.

                        • EMAIL — (map<Array<map>>)

                          Specifies the schedule settings for the email channel.

                          • StartTime — (String)

                            The start of the scheduled time, in ISO 8601 format, when the channel can send messages.

                          • EndTime — (String)

                            The end of the scheduled time, in ISO 8601 format, when the channel can't send messages.

                        • SMS — (map<Array<map>>)

                          Specifies the schedule settings for the SMS channel.

                          • StartTime — (String)

                            The start of the scheduled time, in ISO 8601 format, when the channel can send messages.

                          • EndTime — (String)

                            The end of the scheduled time, in ISO 8601 format, when the channel can't send messages.

                        • PUSH — (map<Array<map>>)

                          Specifies the schedule settings for the push channel.

                          • StartTime — (String)

                            The start of the scheduled time, in ISO 8601 format, when the channel can send messages.

                          • EndTime — (String)

                            The end of the scheduled time, in ISO 8601 format, when the channel can't send messages.

                        • VOICE — (map<Array<map>>)

                          Specifies the schedule settings for the voice channel.

                          • StartTime — (String)

                            The start of the scheduled time, in ISO 8601 format, when the channel can send messages.

                          • EndTime — (String)

                            The end of the scheduled time, in ISO 8601 format, when the channel can't send messages.

                        • CUSTOM — (map<Array<map>>)

                          Specifies the schedule settings for the custom channel.

                          • StartTime — (String)

                            The start of the scheduled time, in ISO 8601 format, when the channel can send messages.

                          • EndTime — (String)

                            The end of the scheduled time, in ISO 8601 format, when the channel can't send messages.

                      • ClosedDays — (map)

                        The time when a journey will not send messages. QuietTime should be configured first and SendingSchedule should be set to true.

                        • EMAIL — (Array<map>)

                          Rules for the Email channel.

                          • Name — (String)

                            The name of the closed day rule.

                          • StartDateTime — (String)

                            Start DateTime ISO 8601 format

                          • EndDateTime — (String)

                            End DateTime ISO 8601 format

                        • SMS — (Array<map>)

                          Rules for the SMS channel.

                          • Name — (String)

                            The name of the closed day rule.

                          • StartDateTime — (String)

                            Start DateTime ISO 8601 format

                          • EndDateTime — (String)

                            End DateTime ISO 8601 format

                        • PUSH — (Array<map>)

                          Rules for the Push channel.

                          • Name — (String)

                            The name of the closed day rule.

                          • StartDateTime — (String)

                            Start DateTime ISO 8601 format

                          • EndDateTime — (String)

                            End DateTime ISO 8601 format

                        • VOICE — (Array<map>)

                          Rules for the Voice channel.

                          • Name — (String)

                            The name of the closed day rule.

                          • StartDateTime — (String)

                            Start DateTime ISO 8601 format

                          • EndDateTime — (String)

                            End DateTime ISO 8601 format

                        • CUSTOM — (Array<map>)

                          Rules for the Custom channel.

                          • Name — (String)

                            The name of the closed day rule.

                          • StartDateTime — (String)

                            Start DateTime ISO 8601 format

                          • EndDateTime — (String)

                            End DateTime ISO 8601 format

                      • TimezoneEstimationMethods — (Array<String>)

                        An array of time zone estimation methods, if any, to use for determining an Endpoints time zone if the Endpoint does not have a value for the Demographic.Timezone attribute.

                        • PHONE_NUMBER - A time zone is determined based on the Endpoint.Address and Endpoint.Location.Country.

                        • POSTAL_CODE - A time zone is determined based on the Endpoint.Location.PostalCode and Endpoint.Location.Country.

                          Note: POSTAL_CODE detection is only supported in the United States, United Kingdom, Australia, New Zealand, Canada, France, Italy, Spain, Germany and in regions where Amazon Pinpoint is available.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getJourneyDateRangeKpi(params = {}, callback) ⇒ AWS.Request

Retrieves (queries) pre-aggregated data for a standard engagement metric that applies to a journey.

Service Reference:

Examples:

Calling the getJourneyDateRangeKpi operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  JourneyId: 'STRING_VALUE', /* required */
  KpiName: 'STRING_VALUE', /* required */
  EndTime: new Date || 'Wed Dec 31 1969 16:00:00 GMT-0800 (PST)' || 123456789,
  NextToken: 'STRING_VALUE',
  PageSize: 'STRING_VALUE',
  StartTime: new Date || 'Wed Dec 31 1969 16:00:00 GMT-0800 (PST)' || 123456789
};
pinpoint.getJourneyDateRangeKpi(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • EndTime — (Date)

      The last date and time to retrieve data for, as part of an inclusive date range that filters the query results. This value should be in extended ISO 8601 format and use Coordinated Universal Time (UTC), for example: 2019-07-26T20:00:00Z for 8:00 PM UTC July 26, 2019.

    • JourneyId — (String)

      The unique identifier for the journey.

    • KpiName — (String)

      The name of the metric, also referred to as a key performance indicator (KPI), to retrieve data for. This value describes the associated metric and consists of two or more terms, which are comprised of lowercase alphanumeric characters, separated by a hyphen. Examples are email-open-rate and successful-delivery-rate. For a list of valid values, see the Amazon Pinpoint Developer Guide.

    • NextToken — (String)

      The string that specifies which page of results to return in a paginated response. This parameter is not supported for application, campaign, and journey metrics.

    • PageSize — (String)

      The maximum number of items to include in each page of a paginated response. This parameter is not supported for application, campaign, and journey metrics.

    • StartTime — (Date)

      The first date and time to retrieve data for, as part of an inclusive date range that filters the query results. This value should be in extended ISO 8601 format and use Coordinated Universal Time (UTC), for example: 2019-07-19T20:00:00Z for 8:00 PM UTC July 19, 2019. This value should also be fewer than 90 days from the current day.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • JourneyDateRangeKpiResponse — (map)

        Provides the results of a query that retrieved the data for a standard engagement metric that applies to a journey, and provides information about that query.

        • ApplicationIdrequired — (String)

          The unique identifier for the application that the metric applies to.

        • EndTimerequired — (Date)

          The last date and time of the date range that was used to filter the query results, in extended ISO 8601 format. The date range is inclusive.

        • JourneyIdrequired — (String)

          The unique identifier for the journey that the metric applies to.

        • KpiNamerequired — (String)

          The name of the metric, also referred to as a key performance indicator (KPI), that the data was retrieved for. This value describes the associated metric and consists of two or more terms, which are comprised of lowercase alphanumeric characters, separated by a hyphen. For a list of possible values, see the Amazon Pinpoint Developer Guide.

        • KpiResultrequired — (map)

          An array of objects that contains the results of the query. Each object contains the value for the metric and metadata about that value.

          • Rowsrequired — (Array<map>)

            An array of objects that provides the results of a query that retrieved the data for a standard metric that applies to an application, campaign, or journey.

            • GroupedBysrequired — (Array<map>)

              An array of objects that defines the field and field values that were used to group data in a result set that contains multiple results. This value is null if the data in a result set isn’t grouped.

              • Keyrequired — (String)

                The friendly name of the metric whose value is specified by the Value property.

              • Typerequired — (String)

                The data type of the value specified by the Value property.

              • Valuerequired — (String)

                In a Values object, the value for the metric that the query retrieved data for. In a GroupedBys object, the value for the field that was used to group data in a result set that contains multiple results (Values objects).

            • Valuesrequired — (Array<map>)

              An array of objects that provides pre-aggregated values for a standard metric that applies to an application, campaign, or journey.

              • Keyrequired — (String)

                The friendly name of the metric whose value is specified by the Value property.

              • Typerequired — (String)

                The data type of the value specified by the Value property.

              • Valuerequired — (String)

                In a Values object, the value for the metric that the query retrieved data for. In a GroupedBys object, the value for the field that was used to group data in a result set that contains multiple results (Values objects).

        • NextToken — (String)

          The string to use in a subsequent request to get the next page of results in a paginated response. This value is null for the Journey Engagement Metrics resource because the resource returns all results in a single page.

        • StartTimerequired — (Date)

          The first date and time of the date range that was used to filter the query results, in extended ISO 8601 format. The date range is inclusive.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getJourneyExecutionActivityMetrics(params = {}, callback) ⇒ AWS.Request

Retrieves (queries) pre-aggregated data for a standard execution metric that applies to a journey activity.

Examples:

Calling the getJourneyExecutionActivityMetrics operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  JourneyActivityId: 'STRING_VALUE', /* required */
  JourneyId: 'STRING_VALUE', /* required */
  NextToken: 'STRING_VALUE',
  PageSize: 'STRING_VALUE'
};
pinpoint.getJourneyExecutionActivityMetrics(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • JourneyActivityId — (String)

      The unique identifier for the journey activity.

    • JourneyId — (String)

      The unique identifier for the journey.

    • NextToken — (String)

      The string that specifies which page of results to return in a paginated response. This parameter is not supported for application, campaign, and journey metrics.

    • PageSize — (String)

      The maximum number of items to include in each page of a paginated response. This parameter is not supported for application, campaign, and journey metrics.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • JourneyExecutionActivityMetricsResponse — (map)

        Provides the results of a query that retrieved the data for a standard execution metric that applies to a journey activity, and provides information about that query.

        • ActivityTyperequired — (String)

          The type of activity that the metric applies to. Possible values are:

          • CONDITIONAL_SPLIT – For a yes/no split activity, which is an activity that sends participants down one of two paths in a journey.

          • HOLDOUT – For a holdout activity, which is an activity that stops a journey for a specified percentage of participants.

          • MESSAGE – For an email activity, which is an activity that sends an email message to participants.

          • MULTI_CONDITIONAL_SPLIT – For a multivariate split activity, which is an activity that sends participants down one of as many as five paths in a journey.

          • RANDOM_SPLIT – For a random split activity, which is an activity that sends specified percentages of participants down one of as many as five paths in a journey.

          • WAIT – For a wait activity, which is an activity that waits for a certain amount of time or until a specific date and time before moving participants to the next activity in a journey.

        • ApplicationIdrequired — (String)

          The unique identifier for the application that the metric applies to.

        • JourneyActivityIdrequired — (String)

          The unique identifier for the activity that the metric applies to.

        • JourneyIdrequired — (String)

          The unique identifier for the journey that the metric applies to.

        • LastEvaluatedTimerequired — (String)

          The date and time, in ISO 8601 format, when Amazon Pinpoint last evaluated the execution status of the activity and updated the data for the metric.

        • Metricsrequired — (map<String>)

          A JSON object that contains the results of the query. The results vary depending on the type of activity (ActivityType). For information about the structure and contents of the results, see the Amazon Pinpoint Developer Guide.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getJourneyExecutionMetrics(params = {}, callback) ⇒ AWS.Request

Retrieves (queries) pre-aggregated data for a standard execution metric that applies to a journey.

Service Reference:

Examples:

Calling the getJourneyExecutionMetrics operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  JourneyId: 'STRING_VALUE', /* required */
  NextToken: 'STRING_VALUE',
  PageSize: 'STRING_VALUE'
};
pinpoint.getJourneyExecutionMetrics(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • JourneyId — (String)

      The unique identifier for the journey.

    • NextToken — (String)

      The string that specifies which page of results to return in a paginated response. This parameter is not supported for application, campaign, and journey metrics.

    • PageSize — (String)

      The maximum number of items to include in each page of a paginated response. This parameter is not supported for application, campaign, and journey metrics.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • JourneyExecutionMetricsResponse — (map)

        Provides the results of a query that retrieved the data for a standard execution metric that applies to a journey, and provides information about that query.

        • ApplicationIdrequired — (String)

          The unique identifier for the application that the metric applies to.

        • JourneyIdrequired — (String)

          The unique identifier for the journey that the metric applies to.

        • LastEvaluatedTimerequired — (String)

          The date and time, in ISO 8601 format, when Amazon Pinpoint last evaluated the journey and updated the data for the metric.

        • Metricsrequired — (map<String>)

          A JSON object that contains the results of the query. For information about the structure and contents of the results, see the Amazon Pinpoint Developer Guide.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getJourneyRunExecutionActivityMetrics(params = {}, callback) ⇒ AWS.Request

Retrieves (queries) pre-aggregated data for a standard run execution metric that applies to a journey activity.

Examples:

To get the activity execution metrics for a journey run


/* The following example gets activity execution metrics for a single run of a journey. */

 var params = {
  ApplicationId: "11111111112222222222333333333344", 
  JourneyId: "aaaaaaaaaabbbbbbbbbbccccccccccdd", 
  RunId: "99999999998888888888777777777766", 
  JourneyActivityId: "AAAAAAAAAA"
 };
 pinpoint.getJourneyRunExecutionActivityMetrics(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
    JourneyRunExecutionActivityMetricsResponse: {
     ApplicationId: "11111111112222222222333333333344", 
     JourneyId: "aaaaaaaaaabbbbbbbbbbccccccccccdd", 
     RunId: "99999999998888888888777777777766", 
     JourneyActivityId: "AAAAAAAAAA", 
     ActivityType: "EMAIL", 
     LastEvaluatedTime: "2000-01-01T00:00:05.000Z", 
     Metrics: {
      "SUCCESS": "1"
     }
    }
   }
   */
 });

Calling the getJourneyRunExecutionActivityMetrics operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  JourneyActivityId: 'STRING_VALUE', /* required */
  JourneyId: 'STRING_VALUE', /* required */
  RunId: 'STRING_VALUE', /* required */
  NextToken: 'STRING_VALUE',
  PageSize: 'STRING_VALUE'
};
pinpoint.getJourneyRunExecutionActivityMetrics(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • JourneyActivityId — (String)

      The unique identifier for the journey activity.

    • JourneyId — (String)

      The unique identifier for the journey.

    • NextToken — (String)

      The string that specifies which page of results to return in a paginated response. This parameter is not supported for application, campaign, and journey metrics.

    • PageSize — (String)

      The maximum number of items to include in each page of a paginated response. This parameter is not supported for application, campaign, and journey metrics.

    • RunId — (String)

      The unique identifier for the journey run.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • JourneyRunExecutionActivityMetricsResponse — (map)

        Provides the results of a query that retrieved the data for a standard execution metric that applies to a journey activity for a particular journey run, and provides information about that query.

        • ActivityTyperequired — (String)

          The type of activity that the metric applies to. Possible values are:

          • CONDITIONAL_SPLIT – For a yes/no split activity, which is an activity that sends participants down one of two paths in a journey.

          • HOLDOUT – For a holdout activity, which is an activity that stops a journey for a specified percentage of participants.

          • MESSAGE – For an email activity, which is an activity that sends an email message to participants.

          • MULTI_CONDITIONAL_SPLIT – For a multivariate split activity, which is an activity that sends participants down one of as many as five paths in a journey.

          • RANDOM_SPLIT – For a random split activity, which is an activity that sends specified percentages of participants down one of as many as five paths in a journey.

          • WAIT – For a wait activity, which is an activity that waits for a certain amount of time or until a specific date and time before moving participants to the next activity in a journey.

        • ApplicationIdrequired — (String)

          The unique identifier for the application that the metric applies to.

        • JourneyActivityIdrequired — (String)

          The unique identifier for the activity that the metric applies to.

        • JourneyIdrequired — (String)

          The unique identifier for the journey that the metric applies to.

        • LastEvaluatedTimerequired — (String)

          The date and time, in ISO 8601 format, when Amazon Pinpoint last evaluated the execution status of the activity for this journey run and updated the data for the metric.

        • Metricsrequired — (map<String>)

          A JSON object that contains the results of the query. For information about the structure and contents of the results, see see Standard Amazon Pinpoint analytics metrics in the Amazon Pinpoint Developer Guide.

        • RunIdrequired — (String)

          The unique identifier for the journey run that the metric applies to.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getJourneyRunExecutionMetrics(params = {}, callback) ⇒ AWS.Request

Retrieves (queries) pre-aggregated data for a standard run execution metric that applies to a journey.

Service Reference:

Examples:

To get the execution metrics for a journey run


/* The following example gets execution metrics for a single run of a journey. */

 var params = {
  ApplicationId: "11111111112222222222333333333344", 
  JourneyId: "aaaaaaaaaabbbbbbbbbbccccccccccdd", 
  RunId: "99999999998888888888777777777766"
 };
 pinpoint.getJourneyRunExecutionMetrics(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
    JourneyRunExecutionMetricsResponse: {
     ApplicationId: "11111111112222222222333333333344", 
     JourneyId: "aaaaaaaaaabbbbbbbbbbccccccccccdd", 
     RunId: "99999999998888888888777777777766", 
     LastEvaluatedTime: "2000-01-01T00:00:05.000Z", 
     Metrics: {
      "ENDPOINT_PRODUCED": "1", 
      "ENDPOINT_ENTERED": "1", 
      "ENDPOINT_LEFT": "1"
     }
    }
   }
   */
 });

Calling the getJourneyRunExecutionMetrics operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  JourneyId: 'STRING_VALUE', /* required */
  RunId: 'STRING_VALUE', /* required */
  NextToken: 'STRING_VALUE',
  PageSize: 'STRING_VALUE'
};
pinpoint.getJourneyRunExecutionMetrics(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • JourneyId — (String)

      The unique identifier for the journey.

    • NextToken — (String)

      The string that specifies which page of results to return in a paginated response. This parameter is not supported for application, campaign, and journey metrics.

    • PageSize — (String)

      The maximum number of items to include in each page of a paginated response. This parameter is not supported for application, campaign, and journey metrics.

    • RunId — (String)

      The unique identifier for the journey run.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • JourneyRunExecutionMetricsResponse — (map)

        Provides the results of a query that retrieved the data for a standard execution metric that applies to a journey run, and provides information about that query.

        • ApplicationIdrequired — (String)

          The unique identifier for the application that the metric applies to.

        • JourneyIdrequired — (String)

          The unique identifier for the journey that the metric applies to.

        • LastEvaluatedTimerequired — (String)

          The date and time, in ISO 8601 format, when Amazon Pinpoint last evaluated the journey run and updated the data for the metric.

        • Metricsrequired — (map<String>)

          A JSON object that contains the results of the query. For information about the structure and contents of the results, see the Standard Amazon Pinpoint analytics metrics in the Amazon Pinpoint Developer Guide.

        • RunIdrequired — (String)

          The unique identifier for the journey run that the metric applies to.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getJourneyRuns(params = {}, callback) ⇒ AWS.Request

Provides information about the runs of a journey.

Service Reference:

Examples:

To get the runs of a journey


/* The following example gets the runs of a journey. */

 var params = {
  ApplicationId: "11111111112222222222333333333344", 
  JourneyId: "aaaaaaaaaabbbbbbbbbbccccccccccdd"
 };
 pinpoint.getJourneyRuns(params, function(err, data) {
   if (err) console.log(err, err.stack); // an error occurred
   else     console.log(data);           // successful response
   /*
   data = {
    JourneyRunsResponse: {
     Item: [
        {
       RunId: "99999999998888888888777777777766", 
       CreationTime: "2000-01-01T00:00:00.000Z", 
       LastUpdateTime: "2000-01-01T00:00:05.000Z", 
       Status: "COMPLETED"
      }, 
        {
       RunId: "ffffffffffeeeeeeeeeeddddddddddcc", 
       CreationTime: "2000-01-01T00:00:10.000Z", 
       LastUpdateTime: "2000-01-01T00:00:10.000Z", 
       Status: "SCHEDULED"
      }
     ]
    }
   }
   */
 });

Calling the getJourneyRuns operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  JourneyId: 'STRING_VALUE', /* required */
  PageSize: 'STRING_VALUE',
  Token: 'STRING_VALUE'
};
pinpoint.getJourneyRuns(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • JourneyId — (String)

      The unique identifier for the journey.

    • PageSize — (String)

      The maximum number of items to include in each page of a paginated response. This parameter is not supported for application, campaign, and journey metrics.

    • Token — (String)

      The NextToken string that specifies which page of results to return in a paginated response.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • JourneyRunsResponse — (map)

        Provides information from all runs of a journey.

        • Itemrequired — (Array<map>)

          An array of responses, one for each run of the journey

          • CreationTimerequired — (String)

            The time when the journey run was created or scheduled, in ISO 8601 format.

          • LastUpdateTimerequired — (String)

            The last time the journey run was updated, in ISO 8601 format..

          • RunIdrequired — (String)

            The unique identifier for the run.

          • Statusrequired — (String)

            The current status of the journey run.

            Possible values include:
            • "SCHEDULED"
            • "RUNNING"
            • "COMPLETED"
            • "CANCELLED"
        • NextToken — (String)

          The string to use in a subsequent request to get the next page of results in a paginated response. This value is null if there are no additional pages.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getPushTemplate(params = {}, callback) ⇒ AWS.Request

Retrieves the content and settings of a message template for messages that are sent through a push notification channel.

Service Reference:

Examples:

Calling the getPushTemplate operation

var params = {
  TemplateName: 'STRING_VALUE', /* required */
  Version: 'STRING_VALUE'
};
pinpoint.getPushTemplate(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • TemplateName — (String)

      The name of the message template. A template name must start with an alphanumeric character and can contain a maximum of 128 characters. The characters can be alphanumeric characters, underscores (_), or hyphens (-). Template names are case sensitive.

    • Version — (String)

      The unique identifier for the version of the message template to update, retrieve information about, or delete. To retrieve identifiers and other information for all the versions of a template, use the Template Versions resource.

      If specified, this value must match the identifier for an existing template version. If specified for an update operation, this value must match the identifier for the latest existing version of the template. This restriction helps ensure that race conditions don't occur.

      If you don't specify a value for this parameter, Amazon Pinpoint does the following:

      • For a get operation, retrieves information about the active version of the template.

      • For an update operation, saves the updates to (overwrites) the latest existing version of the template, if the create-new-version parameter isn't used or is set to false.

      • For a delete operation, deletes the template, including all versions of the template.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • PushNotificationTemplateResponse — (map)

        Provides information about the content and settings for a message template that can be used in messages that are sent through a push notification channel.

        • ADM — (map)

          The message template that's used for the ADM (Amazon Device Messaging) channel. This message template overrides the default template for push notification channels (DefaultPushNotificationTemplate).

          • Action — (String)

            The action to occur if a recipient taps a push notification that's based on the message template. Valid values are:

            • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

            • DEEP_LINK - Your app opens and displays a designated user interface in the app. This action uses the deep-linking features of the Android platform.

            • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

            Possible values include:
            • "OPEN_APP"
            • "DEEP_LINK"
            • "URL"
          • Body — (String)

            The message body to use in a push notification that's based on the message template.

          • ImageIconUrl — (String)

            The URL of the large icon image to display in the content view of a push notification that's based on the message template.

          • ImageUrl — (String)

            The URL of an image to display in a push notification that's based on the message template.

          • RawContent — (String)

            The raw, JSON-formatted string to use as the payload for a push notification that's based on the message template. If specified, this value overrides all other content for the message template.

          • SmallImageIconUrl — (String)

            The URL of the small icon image to display in the status bar and the content view of a push notification that's based on the message template.

          • Sound — (String)

            The sound to play when a recipient receives a push notification that's based on the message template. You can use the default stream or specify the file name of a sound resource that's bundled in your app. On an Android platform, the sound file must reside in /res/raw/.

          • Title — (String)

            The title to use in a push notification that's based on the message template. This title appears above the notification message on a recipient's device.

          • Url — (String)

            The URL to open in a recipient's default mobile browser, if a recipient taps a push notification that's based on the message template and the value of the Action property is URL.

        • APNS — (map)

          The message template that's used for the APNs (Apple Push Notification service) channel. This message template overrides the default template for push notification channels (DefaultPushNotificationTemplate).

          • Action — (String)

            The action to occur if a recipient taps a push notification that's based on the message template. Valid values are:

            • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

            • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of the iOS platform.

            • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

            Possible values include:
            • "OPEN_APP"
            • "DEEP_LINK"
            • "URL"
          • Body — (String)

            The message body to use in push notifications that are based on the message template.

          • MediaUrl — (String)

            The URL of an image or video to display in push notifications that are based on the message template.

          • RawContent — (String)

            The raw, JSON-formatted string to use as the payload for push notifications that are based on the message template. If specified, this value overrides all other content for the message template.

          • Sound — (String)

            The key for the sound to play when the recipient receives a push notification that's based on the message template. The value for this key is the name of a sound file in your app's main bundle or the Library/Sounds folder in your app's data container. If the sound file can't be found or you specify default for the value, the system plays the default alert sound.

          • Title — (String)

            The title to use in push notifications that are based on the message template. This title appears above the notification message on a recipient's device.

          • Url — (String)

            The URL to open in the recipient's default mobile browser, if a recipient taps a push notification that's based on the message template and the value of the Action property is URL.

        • Arn — (String)

          The Amazon Resource Name (ARN) of the message template.

        • Baidu — (map)

          The message template that's used for the Baidu (Baidu Cloud Push) channel. This message template overrides the default template for push notification channels (DefaultPushNotificationTemplate).

          • Action — (String)

            The action to occur if a recipient taps a push notification that's based on the message template. Valid values are:

            • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

            • DEEP_LINK - Your app opens and displays a designated user interface in the app. This action uses the deep-linking features of the Android platform.

            • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

            Possible values include:
            • "OPEN_APP"
            • "DEEP_LINK"
            • "URL"
          • Body — (String)

            The message body to use in a push notification that's based on the message template.

          • ImageIconUrl — (String)

            The URL of the large icon image to display in the content view of a push notification that's based on the message template.

          • ImageUrl — (String)

            The URL of an image to display in a push notification that's based on the message template.

          • RawContent — (String)

            The raw, JSON-formatted string to use as the payload for a push notification that's based on the message template. If specified, this value overrides all other content for the message template.

          • SmallImageIconUrl — (String)

            The URL of the small icon image to display in the status bar and the content view of a push notification that's based on the message template.

          • Sound — (String)

            The sound to play when a recipient receives a push notification that's based on the message template. You can use the default stream or specify the file name of a sound resource that's bundled in your app. On an Android platform, the sound file must reside in /res/raw/.

          • Title — (String)

            The title to use in a push notification that's based on the message template. This title appears above the notification message on a recipient's device.

          • Url — (String)

            The URL to open in a recipient's default mobile browser, if a recipient taps a push notification that's based on the message template and the value of the Action property is URL.

        • CreationDaterequired — (String)

          The date, in ISO 8601 format, when the message template was created.

        • Default — (map)

          The default message template that's used for push notification channels.

          • Action — (String)

            The action to occur if a recipient taps a push notification that's based on the message template. Valid values are:

            • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

            • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of the iOS and Android platforms.

            • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

            Possible values include:
            • "OPEN_APP"
            • "DEEP_LINK"
            • "URL"
          • Body — (String)

            The message body to use in push notifications that are based on the message template.

          • Sound — (String)

            The sound to play when a recipient receives a push notification that's based on the message template. You can use the default stream or specify the file name of a sound resource that's bundled in your app. On an Android platform, the sound file must reside in /res/raw/.

            For an iOS platform, this value is the key for the name of a sound file in your app's main bundle or the Library/Sounds folder in your app's data container. If the sound file can't be found or you specify default for the value, the system plays the default alert sound.

          • Title — (String)

            The title to use in push notifications that are based on the message template. This title appears above the notification message on a recipient's device.

          • Url — (String)

            The URL to open in a recipient's default mobile browser, if a recipient taps a push notification that's based on the message template and the value of the Action property is URL.

        • DefaultSubstitutions — (String)

          The JSON object that specifies the default values that are used for message variables in the message template. This object is a set of key-value pairs. Each key defines a message variable in the template. The corresponding value defines the default value for that variable.

        • GCM — (map)

          The message template that's used for the GCM channel, which is used to send notifications through the Firebase Cloud Messaging (FCM), formerly Google Cloud Messaging (GCM), service. This message template overrides the default template for push notification channels (DefaultPushNotificationTemplate).

          • Action — (String)

            The action to occur if a recipient taps a push notification that's based on the message template. Valid values are:

            • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

            • DEEP_LINK - Your app opens and displays a designated user interface in the app. This action uses the deep-linking features of the Android platform.

            • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

            Possible values include:
            • "OPEN_APP"
            • "DEEP_LINK"
            • "URL"
          • Body — (String)

            The message body to use in a push notification that's based on the message template.

          • ImageIconUrl — (String)

            The URL of the large icon image to display in the content view of a push notification that's based on the message template.

          • ImageUrl — (String)

            The URL of an image to display in a push notification that's based on the message template.

          • RawContent — (String)

            The raw, JSON-formatted string to use as the payload for a push notification that's based on the message template. If specified, this value overrides all other content for the message template.

          • SmallImageIconUrl — (String)

            The URL of the small icon image to display in the status bar and the content view of a push notification that's based on the message template.

          • Sound — (String)

            The sound to play when a recipient receives a push notification that's based on the message template. You can use the default stream or specify the file name of a sound resource that's bundled in your app. On an Android platform, the sound file must reside in /res/raw/.

          • Title — (String)

            The title to use in a push notification that's based on the message template. This title appears above the notification message on a recipient's device.

          • Url — (String)

            The URL to open in a recipient's default mobile browser, if a recipient taps a push notification that's based on the message template and the value of the Action property is URL.

        • LastModifiedDaterequired — (String)

          The date, in ISO 8601 format, when the message template was last modified.

        • RecommenderId — (String)

          The unique identifier for the recommender model that's used by the message template.

        • tags — (map<String>)

          A string-to-string map of key-value pairs that identifies the tags that are associated with the message template. Each tag consists of a required tag key and an associated tag value.

        • TemplateDescription — (String)

          The custom description of the message template.

        • TemplateNamerequired — (String)

          The name of the message template.

        • TemplateTyperequired — (String)

          The type of channel that the message template is designed for. For a push notification template, this value is PUSH.

          Possible values include:
          • "EMAIL"
          • "SMS"
          • "VOICE"
          • "PUSH"
          • "INAPP"
        • Version — (String)

          The unique identifier, as an integer, for the active version of the message template, or the version of the template that you specified by using the version parameter in your request.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getRecommenderConfiguration(params = {}, callback) ⇒ AWS.Request

Retrieves information about an Amazon Pinpoint configuration for a recommender model.

Service Reference:

Examples:

Calling the getRecommenderConfiguration operation

var params = {
  RecommenderId: 'STRING_VALUE' /* required */
};
pinpoint.getRecommenderConfiguration(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • RecommenderId — (String)

      The unique identifier for the recommender model configuration. This identifier is displayed as the Recommender ID on the Amazon Pinpoint console.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • RecommenderConfigurationResponse — (map)

        Provides information about Amazon Pinpoint configuration settings for retrieving and processing data from a recommender model.

        • Attributes — (map<String>)

          A map that defines 1-10 custom endpoint or user attributes, depending on the value for the RecommendationProviderIdType property. Each of these attributes temporarily stores a recommended item that's retrieved from the recommender model and sent to an AWS Lambda function for additional processing. Each attribute can be used as a message variable in a message template.

          This value is null if the configuration doesn't invoke an AWS Lambda function (RecommendationTransformerUri) to perform additional processing of recommendation data.

        • CreationDaterequired — (String)

          The date, in extended ISO 8601 format, when the configuration was created for the recommender model.

        • Description — (String)

          The custom description of the configuration for the recommender model.

        • Idrequired — (String)

          The unique identifier for the recommender model configuration.

        • LastModifiedDaterequired — (String)

          The date, in extended ISO 8601 format, when the configuration for the recommender model was last modified.

        • Name — (String)

          The custom name of the configuration for the recommender model.

        • RecommendationProviderIdType — (String)

          The type of Amazon Pinpoint ID that's associated with unique user IDs in the recommender model. This value enables the model to use attribute and event data that’s specific to a particular endpoint or user in an Amazon Pinpoint application. Possible values are:

          • PINPOINT_ENDPOINT_ID - Each user in the model is associated with a particular endpoint in Amazon Pinpoint. The data is correlated based on endpoint IDs in Amazon Pinpoint. This is the default value.

          • PINPOINT_USER_ID - Each user in the model is associated with a particular user and endpoint in Amazon Pinpoint. The data is correlated based on user IDs in Amazon Pinpoint. If this value is specified, an endpoint definition in Amazon Pinpoint has to specify both a user ID (UserId) and an endpoint ID. Otherwise, messages won’t be sent to the user's endpoint.

        • RecommendationProviderRoleArnrequired — (String)

          The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that authorizes Amazon Pinpoint to retrieve recommendation data from the recommender model.

        • RecommendationProviderUrirequired — (String)

          The Amazon Resource Name (ARN) of the recommender model that Amazon Pinpoint retrieves the recommendation data from. This value is the ARN of an Amazon Personalize campaign.

        • RecommendationTransformerUri — (String)

          The name or Amazon Resource Name (ARN) of the AWS Lambda function that Amazon Pinpoint invokes to perform additional processing of recommendation data that it retrieves from the recommender model.

        • RecommendationsDisplayName — (String)

          The custom display name for the standard endpoint or user attribute (RecommendationItems) that temporarily stores recommended items for each endpoint or user, depending on the value for the RecommendationProviderIdType property. This name appears in the Attribute finder of the template editor on the Amazon Pinpoint console.

          This value is null if the configuration doesn't invoke an AWS Lambda function (RecommendationTransformerUri) to perform additional processing of recommendation data.

        • RecommendationsPerMessage — (Integer)

          The number of recommended items that are retrieved from the model for each endpoint or user, depending on the value for the RecommendationProviderIdType property. This number determines how many recommended items are available for use in message variables.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getRecommenderConfigurations(params = {}, callback) ⇒ AWS.Request

Retrieves information about all the recommender model configurations that are associated with your Amazon Pinpoint account.

Service Reference:

Examples:

Calling the getRecommenderConfigurations operation

var params = {
  PageSize: 'STRING_VALUE',
  Token: 'STRING_VALUE'
};
pinpoint.getRecommenderConfigurations(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • PageSize — (String)

      The maximum number of items to include in each page of a paginated response. This parameter is not supported for application, campaign, and journey metrics.

    • Token — (String)

      The NextToken string that specifies which page of results to return in a paginated response.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • ListRecommenderConfigurationsResponse — (map)

        Provides information about all the recommender model configurations that are associated with your Amazon Pinpoint account.

        • Itemrequired — (Array<map>)

          An array of responses, one for each recommender model configuration that's associated with your Amazon Pinpoint account.

          • Attributes — (map<String>)

            A map that defines 1-10 custom endpoint or user attributes, depending on the value for the RecommendationProviderIdType property. Each of these attributes temporarily stores a recommended item that's retrieved from the recommender model and sent to an AWS Lambda function for additional processing. Each attribute can be used as a message variable in a message template.

            This value is null if the configuration doesn't invoke an AWS Lambda function (RecommendationTransformerUri) to perform additional processing of recommendation data.

          • CreationDaterequired — (String)

            The date, in extended ISO 8601 format, when the configuration was created for the recommender model.

          • Description — (String)

            The custom description of the configuration for the recommender model.

          • Idrequired — (String)

            The unique identifier for the recommender model configuration.

          • LastModifiedDaterequired — (String)

            The date, in extended ISO 8601 format, when the configuration for the recommender model was last modified.

          • Name — (String)

            The custom name of the configuration for the recommender model.

          • RecommendationProviderIdType — (String)

            The type of Amazon Pinpoint ID that's associated with unique user IDs in the recommender model. This value enables the model to use attribute and event data that’s specific to a particular endpoint or user in an Amazon Pinpoint application. Possible values are:

            • PINPOINT_ENDPOINT_ID - Each user in the model is associated with a particular endpoint in Amazon Pinpoint. The data is correlated based on endpoint IDs in Amazon Pinpoint. This is the default value.

            • PINPOINT_USER_ID - Each user in the model is associated with a particular user and endpoint in Amazon Pinpoint. The data is correlated based on user IDs in Amazon Pinpoint. If this value is specified, an endpoint definition in Amazon Pinpoint has to specify both a user ID (UserId) and an endpoint ID. Otherwise, messages won’t be sent to the user's endpoint.

          • RecommendationProviderRoleArnrequired — (String)

            The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that authorizes Amazon Pinpoint to retrieve recommendation data from the recommender model.

          • RecommendationProviderUrirequired — (String)

            The Amazon Resource Name (ARN) of the recommender model that Amazon Pinpoint retrieves the recommendation data from. This value is the ARN of an Amazon Personalize campaign.

          • RecommendationTransformerUri — (String)

            The name or Amazon Resource Name (ARN) of the AWS Lambda function that Amazon Pinpoint invokes to perform additional processing of recommendation data that it retrieves from the recommender model.

          • RecommendationsDisplayName — (String)

            The custom display name for the standard endpoint or user attribute (RecommendationItems) that temporarily stores recommended items for each endpoint or user, depending on the value for the RecommendationProviderIdType property. This name appears in the Attribute finder of the template editor on the Amazon Pinpoint console.

            This value is null if the configuration doesn't invoke an AWS Lambda function (RecommendationTransformerUri) to perform additional processing of recommendation data.

          • RecommendationsPerMessage — (Integer)

            The number of recommended items that are retrieved from the model for each endpoint or user, depending on the value for the RecommendationProviderIdType property. This number determines how many recommended items are available for use in message variables.

        • NextToken — (String)

          The string to use in a subsequent request to get the next page of results in a paginated response. This value is null if there are no additional pages.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getSegment(params = {}, callback) ⇒ AWS.Request

Retrieves information about the configuration, dimension, and other settings for a specific segment that's associated with an application.

Service Reference:

Examples:

Calling the getSegment operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  SegmentId: 'STRING_VALUE' /* required */
};
pinpoint.getSegment(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • SegmentId — (String)

      The unique identifier for the segment.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • SegmentResponse — (map)

        Provides information about the configuration, dimension, and other settings for a segment.

        • ApplicationIdrequired — (String)

          The unique identifier for the application that the segment is associated with.

        • Arnrequired — (String)

          The Amazon Resource Name (ARN) of the segment.

        • CreationDaterequired — (String)

          The date and time when the segment was created.

        • Dimensions — (map)

          The dimension settings for the segment.

          • Attributes — (map<map>)

            One or more custom attributes to use as criteria for the segment.

            • AttributeType — (String)

              The type of segment dimension to use. Valid values are:

              • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
              • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
              • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
              • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
              • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
              • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
              • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
              • Possible values include:
                • "INCLUSIVE"
                • "EXCLUSIVE"
                • "CONTAINS"
                • "BEFORE"
                • "AFTER"
                • "ON"
                • "BETWEEN"
              • Valuesrequired — (Array<String>)

                The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

            • Behavior — (map)

              The behavior-based criteria, such as how recently users have used your app, for the segment.

              • Recency — (map)

                The dimension settings that are based on how recently an endpoint was active.

                • Durationrequired — (String)

                  The duration to use when determining whether an endpoint is active or inactive.

                  Possible values include:
                  • "HR_24"
                  • "DAY_7"
                  • "DAY_14"
                  • "DAY_30"
                • RecencyTyperequired — (String)

                  The type of recency dimension to use for the segment. Valid values are: ACTIVE, endpoints that were active within the specified duration are included in the segment; and, INACTIVE, endpoints that weren't active within the specified duration are included in the segment.

                  Possible values include:
                  • "ACTIVE"
                  • "INACTIVE"
            • Demographic — (map)

              The demographic-based criteria, such as device platform, for the segment.

              • AppVersion — (map)

                The app version criteria for the segment.

                • DimensionType — (String)

                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                  Possible values include:
                  • "INCLUSIVE"
                  • "EXCLUSIVE"
                • Valuesrequired — (Array<String>)

                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

              • Channel — (map)

                The channel criteria for the segment.

                • DimensionType — (String)

                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                  Possible values include:
                  • "INCLUSIVE"
                  • "EXCLUSIVE"
                • Valuesrequired — (Array<String>)

                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

              • DeviceType — (map)

                The device type criteria for the segment.

                • DimensionType — (String)

                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                  Possible values include:
                  • "INCLUSIVE"
                  • "EXCLUSIVE"
                • Valuesrequired — (Array<String>)

                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

              • Make — (map)

                The device make criteria for the segment.

                • DimensionType — (String)

                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                  Possible values include:
                  • "INCLUSIVE"
                  • "EXCLUSIVE"
                • Valuesrequired — (Array<String>)

                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

              • Model — (map)

                The device model criteria for the segment.

                • DimensionType — (String)

                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                  Possible values include:
                  • "INCLUSIVE"
                  • "EXCLUSIVE"
                • Valuesrequired — (Array<String>)

                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

              • Platform — (map)

                The device platform criteria for the segment.

                • DimensionType — (String)

                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                  Possible values include:
                  • "INCLUSIVE"
                  • "EXCLUSIVE"
                • Valuesrequired — (Array<String>)

                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

            • Location — (map)

              The location-based criteria, such as region or GPS coordinates, for the segment.

              • Country — (map)

                The country or region code, in ISO 3166-1 alpha-2 format, for the segment.

                • DimensionType — (String)

                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                  Possible values include:
                  • "INCLUSIVE"
                  • "EXCLUSIVE"
                • Valuesrequired — (Array<String>)

                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

              • GPSPoint — (map)

                The GPS location and range for the segment.

                • Coordinatesrequired — (map)

                  The GPS coordinates to measure distance from.

                  • Latituderequired — (Float)

                    The latitude coordinate of the location.

                  • Longituderequired — (Float)

                    The longitude coordinate of the location.

                • RangeInKilometers — (Float)

                  The range, in kilometers, from the GPS coordinates.

            • Metrics — (map<map>)

              One or more custom metrics to use as criteria for the segment.

              • ComparisonOperatorrequired — (String)

                The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

              • Valuerequired — (Float)

                The value to compare.

            • UserAttributes — (map<map>)

              One or more custom user attributes to use as criteria for the segment.

              • AttributeType — (String)

                The type of segment dimension to use. Valid values are:

                • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                • Possible values include:
                  • "INCLUSIVE"
                  • "EXCLUSIVE"
                  • "CONTAINS"
                  • "BEFORE"
                  • "AFTER"
                  • "ON"
                  • "BETWEEN"
                • Valuesrequired — (Array<String>)

                  The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

            • Idrequired — (String)

              The unique identifier for the segment.

            • ImportDefinition — (map)

              The settings for the import job that's associated with the segment.

              • ChannelCounts — (map<Integer>)

                The number of channel types in the endpoint definitions that were imported to create the segment.

              • ExternalIdrequired — (String)

                (Deprecated) Your AWS account ID, which you assigned to an external ID key in an IAM trust policy. Amazon Pinpoint previously used this value to assume an IAM role when importing endpoint definitions, but we removed this requirement. We don't recommend use of external IDs for IAM roles that are assumed by Amazon Pinpoint.

              • Formatrequired — (String)

                The format of the files that were imported to create the segment. Valid values are: CSV, for comma-separated values format; and, JSON, for newline-delimited JSON format.

                Possible values include:
                • "CSV"
                • "JSON"
              • RoleArnrequired — (String)

                The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that authorized Amazon Pinpoint to access the Amazon S3 location to import endpoint definitions from.

              • S3Urlrequired — (String)

                The URL of the Amazon Simple Storage Service (Amazon S3) bucket that the endpoint definitions were imported from to create the segment.

              • Sizerequired — (Integer)

                The number of endpoint definitions that were imported successfully to create the segment.

            • LastModifiedDate — (String)

              The date and time when the segment was last modified.

            • Name — (String)

              The name of the segment.

            • SegmentGroups — (map)

              A list of one or more segment groups that apply to the segment. Each segment group consists of zero or more base segments and the dimensions that are applied to those base segments.

              • Groups — (Array<map>)

                An array that defines the set of segment criteria to evaluate when handling segment groups for the segment.

                • Dimensions — (Array<map>)

                  An array that defines the dimensions for the segment.

                  • Attributes — (map<map>)

                    One or more custom attributes to use as criteria for the segment.

                    • AttributeType — (String)

                      The type of segment dimension to use. Valid values are:

                      • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                      • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                      • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                      • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                      • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                      • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                      • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                      • Possible values include:
                        • "INCLUSIVE"
                        • "EXCLUSIVE"
                        • "CONTAINS"
                        • "BEFORE"
                        • "AFTER"
                        • "ON"
                        • "BETWEEN"
                      • Valuesrequired — (Array<String>)

                        The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                    • Behavior — (map)

                      The behavior-based criteria, such as how recently users have used your app, for the segment.

                      • Recency — (map)

                        The dimension settings that are based on how recently an endpoint was active.

                        • Durationrequired — (String)

                          The duration to use when determining whether an endpoint is active or inactive.

                          Possible values include:
                          • "HR_24"
                          • "DAY_7"
                          • "DAY_14"
                          • "DAY_30"
                        • RecencyTyperequired — (String)

                          The type of recency dimension to use for the segment. Valid values are: ACTIVE, endpoints that were active within the specified duration are included in the segment; and, INACTIVE, endpoints that weren't active within the specified duration are included in the segment.

                          Possible values include:
                          • "ACTIVE"
                          • "INACTIVE"
                    • Demographic — (map)

                      The demographic-based criteria, such as device platform, for the segment.

                      • AppVersion — (map)

                        The app version criteria for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • Channel — (map)

                        The channel criteria for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • DeviceType — (map)

                        The device type criteria for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • Make — (map)

                        The device make criteria for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • Model — (map)

                        The device model criteria for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • Platform — (map)

                        The device platform criteria for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                    • Location — (map)

                      The location-based criteria, such as region or GPS coordinates, for the segment.

                      • Country — (map)

                        The country or region code, in ISO 3166-1 alpha-2 format, for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • GPSPoint — (map)

                        The GPS location and range for the segment.

                        • Coordinatesrequired — (map)

                          The GPS coordinates to measure distance from.

                          • Latituderequired — (Float)

                            The latitude coordinate of the location.

                          • Longituderequired — (Float)

                            The longitude coordinate of the location.

                        • RangeInKilometers — (Float)

                          The range, in kilometers, from the GPS coordinates.

                    • Metrics — (map<map>)

                      One or more custom metrics to use as criteria for the segment.

                      • ComparisonOperatorrequired — (String)

                        The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                      • Valuerequired — (Float)

                        The value to compare.

                    • UserAttributes — (map<map>)

                      One or more custom user attributes to use as criteria for the segment.

                      • AttributeType — (String)

                        The type of segment dimension to use. Valid values are:

                        • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                        • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                        • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                        • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                        • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                        • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                        • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                        • Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                          • "CONTAINS"
                          • "BEFORE"
                          • "AFTER"
                          • "ON"
                          • "BETWEEN"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                    • SourceSegments — (Array<map>)

                      The base segment to build the segment on. A base segment, also referred to as a source segment, defines the initial population of endpoints for a segment. When you add dimensions to a segment, Amazon Pinpoint filters the base segment by using the dimensions that you specify.

                      You can specify more than one dimensional segment or only one imported segment. If you specify an imported segment, the Amazon Pinpoint console displays a segment size estimate that indicates the size of the imported segment without any filters applied to it.

                      • Idrequired — (String)

                        The unique identifier for the segment.

                      • Version — (Integer)

                        The version number of the segment.

                    • SourceType — (String)

                      Specifies how to handle multiple base segments for the segment. For example, if you specify three base segments for the segment, whether the resulting segment is based on all, any, or none of the base segments.

                      Possible values include:
                      • "ALL"
                      • "ANY"
                      • "NONE"
                    • Type — (String)

                      Specifies how to handle multiple dimensions for the segment. For example, if you specify three dimensions for the segment, whether the resulting segment includes endpoints that match all, any, or none of the dimensions.

                      Possible values include:
                      • "ALL"
                      • "ANY"
                      • "NONE"
                  • Include — (String)

                    Specifies how to handle multiple segment groups for the segment. For example, if the segment includes three segment groups, whether the resulting segment includes endpoints that match all, any, or none of the segment groups.

                    Possible values include:
                    • "ALL"
                    • "ANY"
                    • "NONE"
                • SegmentTyperequired — (String)

                  The segment type. Valid values are:

                  • DIMENSIONAL - A dynamic segment, which is a segment that uses selection criteria that you specify and is based on endpoint data that's reported by your app. Dynamic segments can change over time.

                  • IMPORT - A static segment, which is a segment that uses selection criteria that you specify and is based on endpoint definitions that you import from a file. Imported segments are static; they don't change over time.

                  Possible values include:
                  • "DIMENSIONAL"
                  • "IMPORT"
                • tags — (map<String>)

                  A string-to-string map of key-value pairs that identifies the tags that are associated with the segment. Each tag consists of a required tag key and an associated tag value.

                • Version — (Integer)

                  The version number of the segment.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getSegmentExportJobs(params = {}, callback) ⇒ AWS.Request

Retrieves information about the status and settings of the export jobs for a segment.

Service Reference:

Examples:

Calling the getSegmentExportJobs operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  SegmentId: 'STRING_VALUE', /* required */
  PageSize: 'STRING_VALUE',
  Token: 'STRING_VALUE'
};
pinpoint.getSegmentExportJobs(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • PageSize — (String)

      The maximum number of items to include in each page of a paginated response. This parameter is not supported for application, campaign, and journey metrics.

    • SegmentId — (String)

      The unique identifier for the segment.

    • Token — (String)

      The NextToken string that specifies which page of results to return in a paginated response.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • ExportJobsResponse — (map)

        Provides information about all the export jobs that are associated with an application or segment. An export job is a job that exports endpoint definitions to a file.

        • Itemrequired — (Array<map>)

          An array of responses, one for each export job that's associated with the application (Export Jobs resource) or segment (Segment Export Jobs resource).

          • ApplicationIdrequired — (String)

            The unique identifier for the application that's associated with the export job.

          • CompletedPieces — (Integer)

            The number of pieces that were processed successfully (completed) by the export job, as of the time of the request.

          • CompletionDate — (String)

            The date, in ISO 8601 format, when the export job was completed.

          • CreationDaterequired — (String)

            The date, in ISO 8601 format, when the export job was created.

          • Definitionrequired — (map)

            The resource settings that apply to the export job.

            • RoleArnrequired — (String)

              The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that authorized Amazon Pinpoint to access the Amazon S3 location where the endpoint definitions were exported to.

            • S3UrlPrefixrequired — (String)

              The URL of the location in an Amazon Simple Storage Service (Amazon S3) bucket where the endpoint definitions were exported to. This location is typically a folder that contains multiple files. The URL should be in the following format: s3://bucket-name/folder-name/.

            • SegmentId — (String)

              The identifier for the segment that the endpoint definitions were exported from. If this value isn't present, Amazon Pinpoint exported definitions for all the endpoints that are associated with the application.

            • SegmentVersion — (Integer)

              The version of the segment that the endpoint definitions were exported from.

          • FailedPieces — (Integer)

            The number of pieces that weren't processed successfully (failed) by the export job, as of the time of the request.

          • Failures — (Array<String>)

            An array of entries, one for each of the first 100 entries that weren't processed successfully (failed) by the export job, if any.

          • Idrequired — (String)

            The unique identifier for the export job.

          • JobStatusrequired — (String)

            The status of the export job. The job status is FAILED if Amazon Pinpoint wasn't able to process one or more pieces in the job.

            Possible values include:
            • "CREATED"
            • "PREPARING_FOR_INITIALIZATION"
            • "INITIALIZING"
            • "PROCESSING"
            • "PENDING_JOB"
            • "COMPLETING"
            • "COMPLETED"
            • "FAILING"
            • "FAILED"
          • TotalFailures — (Integer)

            The total number of endpoint definitions that weren't processed successfully (failed) by the export job, typically because an error, such as a syntax error, occurred.

          • TotalPieces — (Integer)

            The total number of pieces that must be processed to complete the export job. Each piece consists of an approximately equal portion of the endpoint definitions that are part of the export job.

          • TotalProcessed — (Integer)

            The total number of endpoint definitions that were processed by the export job.

          • Typerequired — (String)

            The job type. This value is EXPORT for export jobs.

        • NextToken — (String)

          The string to use in a subsequent request to get the next page of results in a paginated response. This value is null if there are no additional pages.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getSegmentImportJobs(params = {}, callback) ⇒ AWS.Request

Retrieves information about the status and settings of the import jobs for a segment.

Service Reference:

Examples:

Calling the getSegmentImportJobs operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  SegmentId: 'STRING_VALUE', /* required */
  PageSize: 'STRING_VALUE',
  Token: 'STRING_VALUE'
};
pinpoint.getSegmentImportJobs(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • PageSize — (String)

      The maximum number of items to include in each page of a paginated response. This parameter is not supported for application, campaign, and journey metrics.

    • SegmentId — (String)

      The unique identifier for the segment.

    • Token — (String)

      The NextToken string that specifies which page of results to return in a paginated response.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • ImportJobsResponse — (map)

        Provides information about the status and settings of all the import jobs that are associated with an application or segment. An import job is a job that imports endpoint definitions from one or more files.

        • Itemrequired — (Array<map>)

          An array of responses, one for each import job that's associated with the application (Import Jobs resource) or segment (Segment Import Jobs resource).

          • ApplicationIdrequired — (String)

            The unique identifier for the application that's associated with the import job.

          • CompletedPieces — (Integer)

            The number of pieces that were processed successfully (completed) by the import job, as of the time of the request.

          • CompletionDate — (String)

            The date, in ISO 8601 format, when the import job was completed.

          • CreationDaterequired — (String)

            The date, in ISO 8601 format, when the import job was created.

          • Definitionrequired — (map)

            The resource settings that apply to the import job.

            • DefineSegment — (Boolean)

              Specifies whether the import job creates a segment that contains the endpoints, when the endpoint definitions are imported.

            • ExternalId — (String)

              (Deprecated) Your AWS account ID, which you assigned to an external ID key in an IAM trust policy. Amazon Pinpoint previously used this value to assume an IAM role when importing endpoint definitions, but we removed this requirement. We don't recommend use of external IDs for IAM roles that are assumed by Amazon Pinpoint.

            • Formatrequired — (String)

              The format of the files that contain the endpoint definitions to import. Valid values are: CSV, for comma-separated values format; and, JSON, for newline-delimited JSON format.

              If the files are stored in an Amazon S3 location and that location contains multiple files that use different formats, Amazon Pinpoint imports data only from the files that use the specified format.

              Possible values include:
              • "CSV"
              • "JSON"
            • RegisterEndpoints — (Boolean)

              Specifies whether the import job registers the endpoints with Amazon Pinpoint, when the endpoint definitions are imported.

            • RoleArnrequired — (String)

              The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that authorizes Amazon Pinpoint to access the Amazon S3 location to import endpoint definitions from.

            • S3Urlrequired — (String)

              The URL of the Amazon Simple Storage Service (Amazon S3) bucket that contains the endpoint definitions to import. This location can be a folder or a single file. If the location is a folder, Amazon Pinpoint imports endpoint definitions from the files in this location, including any subfolders that the folder contains.

              The URL should be in the following format: s3://bucket-name/folder-name/file-name. The location can end with the key for an individual object or a prefix that qualifies multiple objects.

            • SegmentId — (String)

              The identifier for the segment that the import job updates or adds endpoint definitions to, if the import job updates an existing segment.

            • SegmentName — (String)

              The custom name for the segment that's created by the import job, if the value of the DefineSegment property is true.

          • FailedPieces — (Integer)

            The number of pieces that weren't processed successfully (failed) by the import job, as of the time of the request.

          • Failures — (Array<String>)

            An array of entries, one for each of the first 100 entries that weren't processed successfully (failed) by the import job, if any.

          • Idrequired — (String)

            The unique identifier for the import job.

          • JobStatusrequired — (String)

            The status of the import job. The job status is FAILED if Amazon Pinpoint wasn't able to process one or more pieces in the job.

            Possible values include:
            • "CREATED"
            • "PREPARING_FOR_INITIALIZATION"
            • "INITIALIZING"
            • "PROCESSING"
            • "PENDING_JOB"
            • "COMPLETING"
            • "COMPLETED"
            • "FAILING"
            • "FAILED"
          • TotalFailures — (Integer)

            The total number of endpoint definitions that weren't processed successfully (failed) by the import job, typically because an error, such as a syntax error, occurred.

          • TotalPieces — (Integer)

            The total number of pieces that must be processed to complete the import job. Each piece consists of an approximately equal portion of the endpoint definitions that are part of the import job.

          • TotalProcessed — (Integer)

            The total number of endpoint definitions that were processed by the import job.

          • Typerequired — (String)

            The job type. This value is IMPORT for import jobs.

        • NextToken — (String)

          The string to use in a subsequent request to get the next page of results in a paginated response. This value is null if there are no additional pages.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getSegments(params = {}, callback) ⇒ AWS.Request

Retrieves information about the configuration, dimension, and other settings for all the segments that are associated with an application.

Service Reference:

Examples:

Calling the getSegments operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  PageSize: 'STRING_VALUE',
  Token: 'STRING_VALUE'
};
pinpoint.getSegments(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • PageSize — (String)

      The maximum number of items to include in each page of a paginated response. This parameter is not supported for application, campaign, and journey metrics.

    • Token — (String)

      The NextToken string that specifies which page of results to return in a paginated response.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • SegmentsResponse — (map)

        Provides information about all the segments that are associated with an application.

        • Itemrequired — (Array<map>)

          An array of responses, one for each segment that's associated with the application (Segments resource) or each version of a segment that's associated with the application (Segment Versions resource).

          • ApplicationIdrequired — (String)

            The unique identifier for the application that the segment is associated with.

          • Arnrequired — (String)

            The Amazon Resource Name (ARN) of the segment.

          • CreationDaterequired — (String)

            The date and time when the segment was created.

          • Dimensions — (map)

            The dimension settings for the segment.

            • Attributes — (map<map>)

              One or more custom attributes to use as criteria for the segment.

              • AttributeType — (String)

                The type of segment dimension to use. Valid values are:

                • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                • Possible values include:
                  • "INCLUSIVE"
                  • "EXCLUSIVE"
                  • "CONTAINS"
                  • "BEFORE"
                  • "AFTER"
                  • "ON"
                  • "BETWEEN"
                • Valuesrequired — (Array<String>)

                  The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

              • Behavior — (map)

                The behavior-based criteria, such as how recently users have used your app, for the segment.

                • Recency — (map)

                  The dimension settings that are based on how recently an endpoint was active.

                  • Durationrequired — (String)

                    The duration to use when determining whether an endpoint is active or inactive.

                    Possible values include:
                    • "HR_24"
                    • "DAY_7"
                    • "DAY_14"
                    • "DAY_30"
                  • RecencyTyperequired — (String)

                    The type of recency dimension to use for the segment. Valid values are: ACTIVE, endpoints that were active within the specified duration are included in the segment; and, INACTIVE, endpoints that weren't active within the specified duration are included in the segment.

                    Possible values include:
                    • "ACTIVE"
                    • "INACTIVE"
              • Demographic — (map)

                The demographic-based criteria, such as device platform, for the segment.

                • AppVersion — (map)

                  The app version criteria for the segment.

                  • DimensionType — (String)

                    The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                    Possible values include:
                    • "INCLUSIVE"
                    • "EXCLUSIVE"
                  • Valuesrequired — (Array<String>)

                    The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                • Channel — (map)

                  The channel criteria for the segment.

                  • DimensionType — (String)

                    The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                    Possible values include:
                    • "INCLUSIVE"
                    • "EXCLUSIVE"
                  • Valuesrequired — (Array<String>)

                    The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                • DeviceType — (map)

                  The device type criteria for the segment.

                  • DimensionType — (String)

                    The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                    Possible values include:
                    • "INCLUSIVE"
                    • "EXCLUSIVE"
                  • Valuesrequired — (Array<String>)

                    The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                • Make — (map)

                  The device make criteria for the segment.

                  • DimensionType — (String)

                    The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                    Possible values include:
                    • "INCLUSIVE"
                    • "EXCLUSIVE"
                  • Valuesrequired — (Array<String>)

                    The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                • Model — (map)

                  The device model criteria for the segment.

                  • DimensionType — (String)

                    The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                    Possible values include:
                    • "INCLUSIVE"
                    • "EXCLUSIVE"
                  • Valuesrequired — (Array<String>)

                    The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                • Platform — (map)

                  The device platform criteria for the segment.

                  • DimensionType — (String)

                    The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                    Possible values include:
                    • "INCLUSIVE"
                    • "EXCLUSIVE"
                  • Valuesrequired — (Array<String>)

                    The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

              • Location — (map)

                The location-based criteria, such as region or GPS coordinates, for the segment.

                • Country — (map)

                  The country or region code, in ISO 3166-1 alpha-2 format, for the segment.

                  • DimensionType — (String)

                    The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                    Possible values include:
                    • "INCLUSIVE"
                    • "EXCLUSIVE"
                  • Valuesrequired — (Array<String>)

                    The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                • GPSPoint — (map)

                  The GPS location and range for the segment.

                  • Coordinatesrequired — (map)

                    The GPS coordinates to measure distance from.

                    • Latituderequired — (Float)

                      The latitude coordinate of the location.

                    • Longituderequired — (Float)

                      The longitude coordinate of the location.

                  • RangeInKilometers — (Float)

                    The range, in kilometers, from the GPS coordinates.

              • Metrics — (map<map>)

                One or more custom metrics to use as criteria for the segment.

                • ComparisonOperatorrequired — (String)

                  The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                • Valuerequired — (Float)

                  The value to compare.

              • UserAttributes — (map<map>)

                One or more custom user attributes to use as criteria for the segment.

                • AttributeType — (String)

                  The type of segment dimension to use. Valid values are:

                  • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                  • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                  • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                  • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                  • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                  • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                  • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                  • Possible values include:
                    • "INCLUSIVE"
                    • "EXCLUSIVE"
                    • "CONTAINS"
                    • "BEFORE"
                    • "AFTER"
                    • "ON"
                    • "BETWEEN"
                  • Valuesrequired — (Array<String>)

                    The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

              • Idrequired — (String)

                The unique identifier for the segment.

              • ImportDefinition — (map)

                The settings for the import job that's associated with the segment.

                • ChannelCounts — (map<Integer>)

                  The number of channel types in the endpoint definitions that were imported to create the segment.

                • ExternalIdrequired — (String)

                  (Deprecated) Your AWS account ID, which you assigned to an external ID key in an IAM trust policy. Amazon Pinpoint previously used this value to assume an IAM role when importing endpoint definitions, but we removed this requirement. We don't recommend use of external IDs for IAM roles that are assumed by Amazon Pinpoint.

                • Formatrequired — (String)

                  The format of the files that were imported to create the segment. Valid values are: CSV, for comma-separated values format; and, JSON, for newline-delimited JSON format.

                  Possible values include:
                  • "CSV"
                  • "JSON"
                • RoleArnrequired — (String)

                  The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that authorized Amazon Pinpoint to access the Amazon S3 location to import endpoint definitions from.

                • S3Urlrequired — (String)

                  The URL of the Amazon Simple Storage Service (Amazon S3) bucket that the endpoint definitions were imported from to create the segment.

                • Sizerequired — (Integer)

                  The number of endpoint definitions that were imported successfully to create the segment.

              • LastModifiedDate — (String)

                The date and time when the segment was last modified.

              • Name — (String)

                The name of the segment.

              • SegmentGroups — (map)

                A list of one or more segment groups that apply to the segment. Each segment group consists of zero or more base segments and the dimensions that are applied to those base segments.

                • Groups — (Array<map>)

                  An array that defines the set of segment criteria to evaluate when handling segment groups for the segment.

                  • Dimensions — (Array<map>)

                    An array that defines the dimensions for the segment.

                    • Attributes — (map<map>)

                      One or more custom attributes to use as criteria for the segment.

                      • AttributeType — (String)

                        The type of segment dimension to use. Valid values are:

                        • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                        • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                        • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                        • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                        • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                        • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                        • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                        • Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                          • "CONTAINS"
                          • "BEFORE"
                          • "AFTER"
                          • "ON"
                          • "BETWEEN"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                      • Behavior — (map)

                        The behavior-based criteria, such as how recently users have used your app, for the segment.

                        • Recency — (map)

                          The dimension settings that are based on how recently an endpoint was active.

                          • Durationrequired — (String)

                            The duration to use when determining whether an endpoint is active or inactive.

                            Possible values include:
                            • "HR_24"
                            • "DAY_7"
                            • "DAY_14"
                            • "DAY_30"
                          • RecencyTyperequired — (String)

                            The type of recency dimension to use for the segment. Valid values are: ACTIVE, endpoints that were active within the specified duration are included in the segment; and, INACTIVE, endpoints that weren't active within the specified duration are included in the segment.

                            Possible values include:
                            • "ACTIVE"
                            • "INACTIVE"
                      • Demographic — (map)

                        The demographic-based criteria, such as device platform, for the segment.

                        • AppVersion — (map)

                          The app version criteria for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • Channel — (map)

                          The channel criteria for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • DeviceType — (map)

                          The device type criteria for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • Make — (map)

                          The device make criteria for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • Model — (map)

                          The device model criteria for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • Platform — (map)

                          The device platform criteria for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • Location — (map)

                        The location-based criteria, such as region or GPS coordinates, for the segment.

                        • Country — (map)

                          The country or region code, in ISO 3166-1 alpha-2 format, for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • GPSPoint — (map)

                          The GPS location and range for the segment.

                          • Coordinatesrequired — (map)

                            The GPS coordinates to measure distance from.

                            • Latituderequired — (Float)

                              The latitude coordinate of the location.

                            • Longituderequired — (Float)

                              The longitude coordinate of the location.

                          • RangeInKilometers — (Float)

                            The range, in kilometers, from the GPS coordinates.

                      • Metrics — (map<map>)

                        One or more custom metrics to use as criteria for the segment.

                        • ComparisonOperatorrequired — (String)

                          The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                        • Valuerequired — (Float)

                          The value to compare.

                      • UserAttributes — (map<map>)

                        One or more custom user attributes to use as criteria for the segment.

                        • AttributeType — (String)

                          The type of segment dimension to use. Valid values are:

                          • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                          • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                          • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                          • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                          • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                          • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                          • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                          • Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                            • "CONTAINS"
                            • "BEFORE"
                            • "AFTER"
                            • "ON"
                            • "BETWEEN"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                      • SourceSegments — (Array<map>)

                        The base segment to build the segment on. A base segment, also referred to as a source segment, defines the initial population of endpoints for a segment. When you add dimensions to a segment, Amazon Pinpoint filters the base segment by using the dimensions that you specify.

                        You can specify more than one dimensional segment or only one imported segment. If you specify an imported segment, the Amazon Pinpoint console displays a segment size estimate that indicates the size of the imported segment without any filters applied to it.

                        • Idrequired — (String)

                          The unique identifier for the segment.

                        • Version — (Integer)

                          The version number of the segment.

                      • SourceType — (String)

                        Specifies how to handle multiple base segments for the segment. For example, if you specify three base segments for the segment, whether the resulting segment is based on all, any, or none of the base segments.

                        Possible values include:
                        • "ALL"
                        • "ANY"
                        • "NONE"
                      • Type — (String)

                        Specifies how to handle multiple dimensions for the segment. For example, if you specify three dimensions for the segment, whether the resulting segment includes endpoints that match all, any, or none of the dimensions.

                        Possible values include:
                        • "ALL"
                        • "ANY"
                        • "NONE"
                    • Include — (String)

                      Specifies how to handle multiple segment groups for the segment. For example, if the segment includes three segment groups, whether the resulting segment includes endpoints that match all, any, or none of the segment groups.

                      Possible values include:
                      • "ALL"
                      • "ANY"
                      • "NONE"
                  • SegmentTyperequired — (String)

                    The segment type. Valid values are:

                    • DIMENSIONAL - A dynamic segment, which is a segment that uses selection criteria that you specify and is based on endpoint data that's reported by your app. Dynamic segments can change over time.

                    • IMPORT - A static segment, which is a segment that uses selection criteria that you specify and is based on endpoint definitions that you import from a file. Imported segments are static; they don't change over time.

                    Possible values include:
                    • "DIMENSIONAL"
                    • "IMPORT"
                  • tags — (map<String>)

                    A string-to-string map of key-value pairs that identifies the tags that are associated with the segment. Each tag consists of a required tag key and an associated tag value.

                  • Version — (Integer)

                    The version number of the segment.

                • NextToken — (String)

                  The string to use in a subsequent request to get the next page of results in a paginated response. This value is null if there are no additional pages.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getSegmentVersion(params = {}, callback) ⇒ AWS.Request

Retrieves information about the configuration, dimension, and other settings for a specific version of a segment that's associated with an application.

Service Reference:

Examples:

Calling the getSegmentVersion operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  SegmentId: 'STRING_VALUE', /* required */
  Version: 'STRING_VALUE' /* required */
};
pinpoint.getSegmentVersion(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • SegmentId — (String)

      The unique identifier for the segment.

    • Version — (String)

      The unique version number (Version property) for the campaign version.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • SegmentResponse — (map)

        Provides information about the configuration, dimension, and other settings for a segment.

        • ApplicationIdrequired — (String)

          The unique identifier for the application that the segment is associated with.

        • Arnrequired — (String)

          The Amazon Resource Name (ARN) of the segment.

        • CreationDaterequired — (String)

          The date and time when the segment was created.

        • Dimensions — (map)

          The dimension settings for the segment.

          • Attributes — (map<map>)

            One or more custom attributes to use as criteria for the segment.

            • AttributeType — (String)

              The type of segment dimension to use. Valid values are:

              • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
              • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
              • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
              • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
              • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
              • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
              • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
              • Possible values include:
                • "INCLUSIVE"
                • "EXCLUSIVE"
                • "CONTAINS"
                • "BEFORE"
                • "AFTER"
                • "ON"
                • "BETWEEN"
              • Valuesrequired — (Array<String>)

                The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

            • Behavior — (map)

              The behavior-based criteria, such as how recently users have used your app, for the segment.

              • Recency — (map)

                The dimension settings that are based on how recently an endpoint was active.

                • Durationrequired — (String)

                  The duration to use when determining whether an endpoint is active or inactive.

                  Possible values include:
                  • "HR_24"
                  • "DAY_7"
                  • "DAY_14"
                  • "DAY_30"
                • RecencyTyperequired — (String)

                  The type of recency dimension to use for the segment. Valid values are: ACTIVE, endpoints that were active within the specified duration are included in the segment; and, INACTIVE, endpoints that weren't active within the specified duration are included in the segment.

                  Possible values include:
                  • "ACTIVE"
                  • "INACTIVE"
            • Demographic — (map)

              The demographic-based criteria, such as device platform, for the segment.

              • AppVersion — (map)

                The app version criteria for the segment.

                • DimensionType — (String)

                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                  Possible values include:
                  • "INCLUSIVE"
                  • "EXCLUSIVE"
                • Valuesrequired — (Array<String>)

                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

              • Channel — (map)

                The channel criteria for the segment.

                • DimensionType — (String)

                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                  Possible values include:
                  • "INCLUSIVE"
                  • "EXCLUSIVE"
                • Valuesrequired — (Array<String>)

                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

              • DeviceType — (map)

                The device type criteria for the segment.

                • DimensionType — (String)

                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                  Possible values include:
                  • "INCLUSIVE"
                  • "EXCLUSIVE"
                • Valuesrequired — (Array<String>)

                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

              • Make — (map)

                The device make criteria for the segment.

                • DimensionType — (String)

                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                  Possible values include:
                  • "INCLUSIVE"
                  • "EXCLUSIVE"
                • Valuesrequired — (Array<String>)

                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

              • Model — (map)

                The device model criteria for the segment.

                • DimensionType — (String)

                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                  Possible values include:
                  • "INCLUSIVE"
                  • "EXCLUSIVE"
                • Valuesrequired — (Array<String>)

                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

              • Platform — (map)

                The device platform criteria for the segment.

                • DimensionType — (String)

                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                  Possible values include:
                  • "INCLUSIVE"
                  • "EXCLUSIVE"
                • Valuesrequired — (Array<String>)

                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

            • Location — (map)

              The location-based criteria, such as region or GPS coordinates, for the segment.

              • Country — (map)

                The country or region code, in ISO 3166-1 alpha-2 format, for the segment.

                • DimensionType — (String)

                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                  Possible values include:
                  • "INCLUSIVE"
                  • "EXCLUSIVE"
                • Valuesrequired — (Array<String>)

                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

              • GPSPoint — (map)

                The GPS location and range for the segment.

                • Coordinatesrequired — (map)

                  The GPS coordinates to measure distance from.

                  • Latituderequired — (Float)

                    The latitude coordinate of the location.

                  • Longituderequired — (Float)

                    The longitude coordinate of the location.

                • RangeInKilometers — (Float)

                  The range, in kilometers, from the GPS coordinates.

            • Metrics — (map<map>)

              One or more custom metrics to use as criteria for the segment.

              • ComparisonOperatorrequired — (String)

                The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

              • Valuerequired — (Float)

                The value to compare.

            • UserAttributes — (map<map>)

              One or more custom user attributes to use as criteria for the segment.

              • AttributeType — (String)

                The type of segment dimension to use. Valid values are:

                • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                • Possible values include:
                  • "INCLUSIVE"
                  • "EXCLUSIVE"
                  • "CONTAINS"
                  • "BEFORE"
                  • "AFTER"
                  • "ON"
                  • "BETWEEN"
                • Valuesrequired — (Array<String>)

                  The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

            • Idrequired — (String)

              The unique identifier for the segment.

            • ImportDefinition — (map)

              The settings for the import job that's associated with the segment.

              • ChannelCounts — (map<Integer>)

                The number of channel types in the endpoint definitions that were imported to create the segment.

              • ExternalIdrequired — (String)

                (Deprecated) Your AWS account ID, which you assigned to an external ID key in an IAM trust policy. Amazon Pinpoint previously used this value to assume an IAM role when importing endpoint definitions, but we removed this requirement. We don't recommend use of external IDs for IAM roles that are assumed by Amazon Pinpoint.

              • Formatrequired — (String)

                The format of the files that were imported to create the segment. Valid values are: CSV, for comma-separated values format; and, JSON, for newline-delimited JSON format.

                Possible values include:
                • "CSV"
                • "JSON"
              • RoleArnrequired — (String)

                The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that authorized Amazon Pinpoint to access the Amazon S3 location to import endpoint definitions from.

              • S3Urlrequired — (String)

                The URL of the Amazon Simple Storage Service (Amazon S3) bucket that the endpoint definitions were imported from to create the segment.

              • Sizerequired — (Integer)

                The number of endpoint definitions that were imported successfully to create the segment.

            • LastModifiedDate — (String)

              The date and time when the segment was last modified.

            • Name — (String)

              The name of the segment.

            • SegmentGroups — (map)

              A list of one or more segment groups that apply to the segment. Each segment group consists of zero or more base segments and the dimensions that are applied to those base segments.

              • Groups — (Array<map>)

                An array that defines the set of segment criteria to evaluate when handling segment groups for the segment.

                • Dimensions — (Array<map>)

                  An array that defines the dimensions for the segment.

                  • Attributes — (map<map>)

                    One or more custom attributes to use as criteria for the segment.

                    • AttributeType — (String)

                      The type of segment dimension to use. Valid values are:

                      • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                      • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                      • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                      • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                      • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                      • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                      • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                      • Possible values include:
                        • "INCLUSIVE"
                        • "EXCLUSIVE"
                        • "CONTAINS"
                        • "BEFORE"
                        • "AFTER"
                        • "ON"
                        • "BETWEEN"
                      • Valuesrequired — (Array<String>)

                        The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                    • Behavior — (map)

                      The behavior-based criteria, such as how recently users have used your app, for the segment.

                      • Recency — (map)

                        The dimension settings that are based on how recently an endpoint was active.

                        • Durationrequired — (String)

                          The duration to use when determining whether an endpoint is active or inactive.

                          Possible values include:
                          • "HR_24"
                          • "DAY_7"
                          • "DAY_14"
                          • "DAY_30"
                        • RecencyTyperequired — (String)

                          The type of recency dimension to use for the segment. Valid values are: ACTIVE, endpoints that were active within the specified duration are included in the segment; and, INACTIVE, endpoints that weren't active within the specified duration are included in the segment.

                          Possible values include:
                          • "ACTIVE"
                          • "INACTIVE"
                    • Demographic — (map)

                      The demographic-based criteria, such as device platform, for the segment.

                      • AppVersion — (map)

                        The app version criteria for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • Channel — (map)

                        The channel criteria for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • DeviceType — (map)

                        The device type criteria for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • Make — (map)

                        The device make criteria for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • Model — (map)

                        The device model criteria for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • Platform — (map)

                        The device platform criteria for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                    • Location — (map)

                      The location-based criteria, such as region or GPS coordinates, for the segment.

                      • Country — (map)

                        The country or region code, in ISO 3166-1 alpha-2 format, for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • GPSPoint — (map)

                        The GPS location and range for the segment.

                        • Coordinatesrequired — (map)

                          The GPS coordinates to measure distance from.

                          • Latituderequired — (Float)

                            The latitude coordinate of the location.

                          • Longituderequired — (Float)

                            The longitude coordinate of the location.

                        • RangeInKilometers — (Float)

                          The range, in kilometers, from the GPS coordinates.

                    • Metrics — (map<map>)

                      One or more custom metrics to use as criteria for the segment.

                      • ComparisonOperatorrequired — (String)

                        The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                      • Valuerequired — (Float)

                        The value to compare.

                    • UserAttributes — (map<map>)

                      One or more custom user attributes to use as criteria for the segment.

                      • AttributeType — (String)

                        The type of segment dimension to use. Valid values are:

                        • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                        • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                        • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                        • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                        • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                        • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                        • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                        • Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                          • "CONTAINS"
                          • "BEFORE"
                          • "AFTER"
                          • "ON"
                          • "BETWEEN"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                    • SourceSegments — (Array<map>)

                      The base segment to build the segment on. A base segment, also referred to as a source segment, defines the initial population of endpoints for a segment. When you add dimensions to a segment, Amazon Pinpoint filters the base segment by using the dimensions that you specify.

                      You can specify more than one dimensional segment or only one imported segment. If you specify an imported segment, the Amazon Pinpoint console displays a segment size estimate that indicates the size of the imported segment without any filters applied to it.

                      • Idrequired — (String)

                        The unique identifier for the segment.

                      • Version — (Integer)

                        The version number of the segment.

                    • SourceType — (String)

                      Specifies how to handle multiple base segments for the segment. For example, if you specify three base segments for the segment, whether the resulting segment is based on all, any, or none of the base segments.

                      Possible values include:
                      • "ALL"
                      • "ANY"
                      • "NONE"
                    • Type — (String)

                      Specifies how to handle multiple dimensions for the segment. For example, if you specify three dimensions for the segment, whether the resulting segment includes endpoints that match all, any, or none of the dimensions.

                      Possible values include:
                      • "ALL"
                      • "ANY"
                      • "NONE"
                  • Include — (String)

                    Specifies how to handle multiple segment groups for the segment. For example, if the segment includes three segment groups, whether the resulting segment includes endpoints that match all, any, or none of the segment groups.

                    Possible values include:
                    • "ALL"
                    • "ANY"
                    • "NONE"
                • SegmentTyperequired — (String)

                  The segment type. Valid values are:

                  • DIMENSIONAL - A dynamic segment, which is a segment that uses selection criteria that you specify and is based on endpoint data that's reported by your app. Dynamic segments can change over time.

                  • IMPORT - A static segment, which is a segment that uses selection criteria that you specify and is based on endpoint definitions that you import from a file. Imported segments are static; they don't change over time.

                  Possible values include:
                  • "DIMENSIONAL"
                  • "IMPORT"
                • tags — (map<String>)

                  A string-to-string map of key-value pairs that identifies the tags that are associated with the segment. Each tag consists of a required tag key and an associated tag value.

                • Version — (Integer)

                  The version number of the segment.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getSegmentVersions(params = {}, callback) ⇒ AWS.Request

Retrieves information about the configuration, dimension, and other settings for all the versions of a specific segment that's associated with an application.

Service Reference:

Examples:

Calling the getSegmentVersions operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  SegmentId: 'STRING_VALUE', /* required */
  PageSize: 'STRING_VALUE',
  Token: 'STRING_VALUE'
};
pinpoint.getSegmentVersions(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • PageSize — (String)

      The maximum number of items to include in each page of a paginated response. This parameter is not supported for application, campaign, and journey metrics.

    • SegmentId — (String)

      The unique identifier for the segment.

    • Token — (String)

      The NextToken string that specifies which page of results to return in a paginated response.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • SegmentsResponse — (map)

        Provides information about all the segments that are associated with an application.

        • Itemrequired — (Array<map>)

          An array of responses, one for each segment that's associated with the application (Segments resource) or each version of a segment that's associated with the application (Segment Versions resource).

          • ApplicationIdrequired — (String)

            The unique identifier for the application that the segment is associated with.

          • Arnrequired — (String)

            The Amazon Resource Name (ARN) of the segment.

          • CreationDaterequired — (String)

            The date and time when the segment was created.

          • Dimensions — (map)

            The dimension settings for the segment.

            • Attributes — (map<map>)

              One or more custom attributes to use as criteria for the segment.

              • AttributeType — (String)

                The type of segment dimension to use. Valid values are:

                • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                • Possible values include:
                  • "INCLUSIVE"
                  • "EXCLUSIVE"
                  • "CONTAINS"
                  • "BEFORE"
                  • "AFTER"
                  • "ON"
                  • "BETWEEN"
                • Valuesrequired — (Array<String>)

                  The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

              • Behavior — (map)

                The behavior-based criteria, such as how recently users have used your app, for the segment.

                • Recency — (map)

                  The dimension settings that are based on how recently an endpoint was active.

                  • Durationrequired — (String)

                    The duration to use when determining whether an endpoint is active or inactive.

                    Possible values include:
                    • "HR_24"
                    • "DAY_7"
                    • "DAY_14"
                    • "DAY_30"
                  • RecencyTyperequired — (String)

                    The type of recency dimension to use for the segment. Valid values are: ACTIVE, endpoints that were active within the specified duration are included in the segment; and, INACTIVE, endpoints that weren't active within the specified duration are included in the segment.

                    Possible values include:
                    • "ACTIVE"
                    • "INACTIVE"
              • Demographic — (map)

                The demographic-based criteria, such as device platform, for the segment.

                • AppVersion — (map)

                  The app version criteria for the segment.

                  • DimensionType — (String)

                    The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                    Possible values include:
                    • "INCLUSIVE"
                    • "EXCLUSIVE"
                  • Valuesrequired — (Array<String>)

                    The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                • Channel — (map)

                  The channel criteria for the segment.

                  • DimensionType — (String)

                    The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                    Possible values include:
                    • "INCLUSIVE"
                    • "EXCLUSIVE"
                  • Valuesrequired — (Array<String>)

                    The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                • DeviceType — (map)

                  The device type criteria for the segment.

                  • DimensionType — (String)

                    The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                    Possible values include:
                    • "INCLUSIVE"
                    • "EXCLUSIVE"
                  • Valuesrequired — (Array<String>)

                    The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                • Make — (map)

                  The device make criteria for the segment.

                  • DimensionType — (String)

                    The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                    Possible values include:
                    • "INCLUSIVE"
                    • "EXCLUSIVE"
                  • Valuesrequired — (Array<String>)

                    The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                • Model — (map)

                  The device model criteria for the segment.

                  • DimensionType — (String)

                    The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                    Possible values include:
                    • "INCLUSIVE"
                    • "EXCLUSIVE"
                  • Valuesrequired — (Array<String>)

                    The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                • Platform — (map)

                  The device platform criteria for the segment.

                  • DimensionType — (String)

                    The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                    Possible values include:
                    • "INCLUSIVE"
                    • "EXCLUSIVE"
                  • Valuesrequired — (Array<String>)

                    The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

              • Location — (map)

                The location-based criteria, such as region or GPS coordinates, for the segment.

                • Country — (map)

                  The country or region code, in ISO 3166-1 alpha-2 format, for the segment.

                  • DimensionType — (String)

                    The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                    Possible values include:
                    • "INCLUSIVE"
                    • "EXCLUSIVE"
                  • Valuesrequired — (Array<String>)

                    The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                • GPSPoint — (map)

                  The GPS location and range for the segment.

                  • Coordinatesrequired — (map)

                    The GPS coordinates to measure distance from.

                    • Latituderequired — (Float)

                      The latitude coordinate of the location.

                    • Longituderequired — (Float)

                      The longitude coordinate of the location.

                  • RangeInKilometers — (Float)

                    The range, in kilometers, from the GPS coordinates.

              • Metrics — (map<map>)

                One or more custom metrics to use as criteria for the segment.

                • ComparisonOperatorrequired — (String)

                  The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                • Valuerequired — (Float)

                  The value to compare.

              • UserAttributes — (map<map>)

                One or more custom user attributes to use as criteria for the segment.

                • AttributeType — (String)

                  The type of segment dimension to use. Valid values are:

                  • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                  • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                  • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                  • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                  • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                  • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                  • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                  • Possible values include:
                    • "INCLUSIVE"
                    • "EXCLUSIVE"
                    • "CONTAINS"
                    • "BEFORE"
                    • "AFTER"
                    • "ON"
                    • "BETWEEN"
                  • Valuesrequired — (Array<String>)

                    The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

              • Idrequired — (String)

                The unique identifier for the segment.

              • ImportDefinition — (map)

                The settings for the import job that's associated with the segment.

                • ChannelCounts — (map<Integer>)

                  The number of channel types in the endpoint definitions that were imported to create the segment.

                • ExternalIdrequired — (String)

                  (Deprecated) Your AWS account ID, which you assigned to an external ID key in an IAM trust policy. Amazon Pinpoint previously used this value to assume an IAM role when importing endpoint definitions, but we removed this requirement. We don't recommend use of external IDs for IAM roles that are assumed by Amazon Pinpoint.

                • Formatrequired — (String)

                  The format of the files that were imported to create the segment. Valid values are: CSV, for comma-separated values format; and, JSON, for newline-delimited JSON format.

                  Possible values include:
                  • "CSV"
                  • "JSON"
                • RoleArnrequired — (String)

                  The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that authorized Amazon Pinpoint to access the Amazon S3 location to import endpoint definitions from.

                • S3Urlrequired — (String)

                  The URL of the Amazon Simple Storage Service (Amazon S3) bucket that the endpoint definitions were imported from to create the segment.

                • Sizerequired — (Integer)

                  The number of endpoint definitions that were imported successfully to create the segment.

              • LastModifiedDate — (String)

                The date and time when the segment was last modified.

              • Name — (String)

                The name of the segment.

              • SegmentGroups — (map)

                A list of one or more segment groups that apply to the segment. Each segment group consists of zero or more base segments and the dimensions that are applied to those base segments.

                • Groups — (Array<map>)

                  An array that defines the set of segment criteria to evaluate when handling segment groups for the segment.

                  • Dimensions — (Array<map>)

                    An array that defines the dimensions for the segment.

                    • Attributes — (map<map>)

                      One or more custom attributes to use as criteria for the segment.

                      • AttributeType — (String)

                        The type of segment dimension to use. Valid values are:

                        • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                        • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                        • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                        • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                        • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                        • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                        • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                        • Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                          • "CONTAINS"
                          • "BEFORE"
                          • "AFTER"
                          • "ON"
                          • "BETWEEN"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                      • Behavior — (map)

                        The behavior-based criteria, such as how recently users have used your app, for the segment.

                        • Recency — (map)

                          The dimension settings that are based on how recently an endpoint was active.

                          • Durationrequired — (String)

                            The duration to use when determining whether an endpoint is active or inactive.

                            Possible values include:
                            • "HR_24"
                            • "DAY_7"
                            • "DAY_14"
                            • "DAY_30"
                          • RecencyTyperequired — (String)

                            The type of recency dimension to use for the segment. Valid values are: ACTIVE, endpoints that were active within the specified duration are included in the segment; and, INACTIVE, endpoints that weren't active within the specified duration are included in the segment.

                            Possible values include:
                            • "ACTIVE"
                            • "INACTIVE"
                      • Demographic — (map)

                        The demographic-based criteria, such as device platform, for the segment.

                        • AppVersion — (map)

                          The app version criteria for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • Channel — (map)

                          The channel criteria for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • DeviceType — (map)

                          The device type criteria for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • Make — (map)

                          The device make criteria for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • Model — (map)

                          The device model criteria for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • Platform — (map)

                          The device platform criteria for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • Location — (map)

                        The location-based criteria, such as region or GPS coordinates, for the segment.

                        • Country — (map)

                          The country or region code, in ISO 3166-1 alpha-2 format, for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • GPSPoint — (map)

                          The GPS location and range for the segment.

                          • Coordinatesrequired — (map)

                            The GPS coordinates to measure distance from.

                            • Latituderequired — (Float)

                              The latitude coordinate of the location.

                            • Longituderequired — (Float)

                              The longitude coordinate of the location.

                          • RangeInKilometers — (Float)

                            The range, in kilometers, from the GPS coordinates.

                      • Metrics — (map<map>)

                        One or more custom metrics to use as criteria for the segment.

                        • ComparisonOperatorrequired — (String)

                          The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                        • Valuerequired — (Float)

                          The value to compare.

                      • UserAttributes — (map<map>)

                        One or more custom user attributes to use as criteria for the segment.

                        • AttributeType — (String)

                          The type of segment dimension to use. Valid values are:

                          • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                          • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                          • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                          • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                          • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                          • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                          • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                          • Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                            • "CONTAINS"
                            • "BEFORE"
                            • "AFTER"
                            • "ON"
                            • "BETWEEN"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                      • SourceSegments — (Array<map>)

                        The base segment to build the segment on. A base segment, also referred to as a source segment, defines the initial population of endpoints for a segment. When you add dimensions to a segment, Amazon Pinpoint filters the base segment by using the dimensions that you specify.

                        You can specify more than one dimensional segment or only one imported segment. If you specify an imported segment, the Amazon Pinpoint console displays a segment size estimate that indicates the size of the imported segment without any filters applied to it.

                        • Idrequired — (String)

                          The unique identifier for the segment.

                        • Version — (Integer)

                          The version number of the segment.

                      • SourceType — (String)

                        Specifies how to handle multiple base segments for the segment. For example, if you specify three base segments for the segment, whether the resulting segment is based on all, any, or none of the base segments.

                        Possible values include:
                        • "ALL"
                        • "ANY"
                        • "NONE"
                      • Type — (String)

                        Specifies how to handle multiple dimensions for the segment. For example, if you specify three dimensions for the segment, whether the resulting segment includes endpoints that match all, any, or none of the dimensions.

                        Possible values include:
                        • "ALL"
                        • "ANY"
                        • "NONE"
                    • Include — (String)

                      Specifies how to handle multiple segment groups for the segment. For example, if the segment includes three segment groups, whether the resulting segment includes endpoints that match all, any, or none of the segment groups.

                      Possible values include:
                      • "ALL"
                      • "ANY"
                      • "NONE"
                  • SegmentTyperequired — (String)

                    The segment type. Valid values are:

                    • DIMENSIONAL - A dynamic segment, which is a segment that uses selection criteria that you specify and is based on endpoint data that's reported by your app. Dynamic segments can change over time.

                    • IMPORT - A static segment, which is a segment that uses selection criteria that you specify and is based on endpoint definitions that you import from a file. Imported segments are static; they don't change over time.

                    Possible values include:
                    • "DIMENSIONAL"
                    • "IMPORT"
                  • tags — (map<String>)

                    A string-to-string map of key-value pairs that identifies the tags that are associated with the segment. Each tag consists of a required tag key and an associated tag value.

                  • Version — (Integer)

                    The version number of the segment.

                • NextToken — (String)

                  The string to use in a subsequent request to get the next page of results in a paginated response. This value is null if there are no additional pages.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getSmsChannel(params = {}, callback) ⇒ AWS.Request

Retrieves information about the status and settings of the SMS channel for an application.

Service Reference:

Examples:

Calling the getSmsChannel operation

var params = {
  ApplicationId: 'STRING_VALUE' /* required */
};
pinpoint.getSmsChannel(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • SMSChannelResponse — (map)

        Provides information about the status and settings of the SMS channel for an application.

        • ApplicationId — (String)

          The unique identifier for the application that the SMS channel applies to.

        • CreationDate — (String)

          The date and time, in ISO 8601 format, when the SMS channel was enabled.

        • Enabled — (Boolean)

          Specifies whether the SMS channel is enabled for the application.

        • HasCredential — (Boolean)

          (Not used) This property is retained only for backward compatibility.

        • Id — (String)

          (Deprecated) An identifier for the SMS channel. This property is retained only for backward compatibility.

        • IsArchived — (Boolean)

          Specifies whether the SMS channel is archived.

        • LastModifiedBy — (String)

          The user who last modified the SMS channel.

        • LastModifiedDate — (String)

          The date and time, in ISO 8601 format, when the SMS channel was last modified.

        • Platformrequired — (String)

          The type of messaging or notification platform for the channel. For the SMS channel, this value is SMS.

        • PromotionalMessagesPerSecond — (Integer)

          The maximum number of promotional messages that you can send through the SMS channel each second.

        • SenderId — (String)

          The identity that displays on recipients' devices when they receive messages from the SMS channel.

        • ShortCode — (String)

          The registered short code to use when you send messages through the SMS channel.

        • TransactionalMessagesPerSecond — (Integer)

          The maximum number of transactional messages that you can send through the SMS channel each second.

        • Version — (Integer)

          The current version of the SMS channel.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getSmsTemplate(params = {}, callback) ⇒ AWS.Request

Retrieves the content and settings of a message template for messages that are sent through the SMS channel.

Service Reference:

Examples:

Calling the getSmsTemplate operation

var params = {
  TemplateName: 'STRING_VALUE', /* required */
  Version: 'STRING_VALUE'
};
pinpoint.getSmsTemplate(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • TemplateName — (String)

      The name of the message template. A template name must start with an alphanumeric character and can contain a maximum of 128 characters. The characters can be alphanumeric characters, underscores (_), or hyphens (-). Template names are case sensitive.

    • Version — (String)

      The unique identifier for the version of the message template to update, retrieve information about, or delete. To retrieve identifiers and other information for all the versions of a template, use the Template Versions resource.

      If specified, this value must match the identifier for an existing template version. If specified for an update operation, this value must match the identifier for the latest existing version of the template. This restriction helps ensure that race conditions don't occur.

      If you don't specify a value for this parameter, Amazon Pinpoint does the following:

      • For a get operation, retrieves information about the active version of the template.

      • For an update operation, saves the updates to (overwrites) the latest existing version of the template, if the create-new-version parameter isn't used or is set to false.

      • For a delete operation, deletes the template, including all versions of the template.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • SMSTemplateResponse — (map)

        Provides information about the content and settings for a message template that can be used in text messages that are sent through the SMS channel.

        • Arn — (String)

          The Amazon Resource Name (ARN) of the message template.

        • Body — (String)

          The message body that's used in text messages that are based on the message template.

        • CreationDaterequired — (String)

          The date, in ISO 8601 format, when the message template was created.

        • DefaultSubstitutions — (String)

          The JSON object that specifies the default values that are used for message variables in the message template. This object is a set of key-value pairs. Each key defines a message variable in the template. The corresponding value defines the default value for that variable.

        • LastModifiedDaterequired — (String)

          The date, in ISO 8601 format, when the message template was last modified.

        • RecommenderId — (String)

          The unique identifier for the recommender model that's used by the message template.

        • tags — (map<String>)

          A string-to-string map of key-value pairs that identifies the tags that are associated with the message template. Each tag consists of a required tag key and an associated tag value.

        • TemplateDescription — (String)

          The custom description of the message template.

        • TemplateNamerequired — (String)

          The name of the message template.

        • TemplateTyperequired — (String)

          The type of channel that the message template is designed for. For an SMS template, this value is SMS.

          Possible values include:
          • "EMAIL"
          • "SMS"
          • "VOICE"
          • "PUSH"
          • "INAPP"
        • Version — (String)

          The unique identifier, as an integer, for the active version of the message template, or the version of the template that you specified by using the version parameter in your request.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getUserEndpoints(params = {}, callback) ⇒ AWS.Request

Retrieves information about all the endpoints that are associated with a specific user ID.

Service Reference:

Examples:

Calling the getUserEndpoints operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  UserId: 'STRING_VALUE' /* required */
};
pinpoint.getUserEndpoints(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • UserId — (String)

      The unique identifier for the user.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • EndpointsResponse — (map)

        Provides information about all the endpoints that are associated with a user ID.

        • Itemrequired — (Array<map>)

          An array of responses, one for each endpoint that's associated with the user ID.

          • Address — (String)

            The destination address for messages or push notifications that you send to the endpoint. The address varies by channel. For example, the address for a push-notification channel is typically the token provided by a push notification service, such as an Apple Push Notification service (APNs) device token or a Firebase Cloud Messaging (FCM) registration token. The address for the SMS channel is a phone number in E.164 format, such as +12065550100. The address for the email channel is an email address.

          • ApplicationId — (String)

            The unique identifier for the application that's associated with the endpoint.

          • Attributes — (map<Array<String>>)

            One or more custom attributes that describe the endpoint by associating a name with an array of values. For example, the value of a custom attribute named Interests might be: ["Science", "Music", "Travel"]. You can use these attributes as filter criteria when you create segments.

          • ChannelType — (String)

            The channel that's used when sending messages or push notifications to the endpoint.

            Possible values include:
            • "PUSH"
            • "GCM"
            • "APNS"
            • "APNS_SANDBOX"
            • "APNS_VOIP"
            • "APNS_VOIP_SANDBOX"
            • "ADM"
            • "SMS"
            • "VOICE"
            • "EMAIL"
            • "BAIDU"
            • "CUSTOM"
            • "IN_APP"
          • CohortId — (String)

            A number from 0-99 that represents the cohort that the endpoint is assigned to. Endpoints are grouped into cohorts randomly, and each cohort contains approximately 1 percent of the endpoints for an application. Amazon Pinpoint assigns cohorts to the holdout or treatment allocations for campaigns.

          • CreationDate — (String)

            The date and time, in ISO 8601 format, when the endpoint was created.

          • Demographic — (map)

            The demographic information for the endpoint, such as the time zone and platform.

            • AppVersion — (String)

              The version of the app that's associated with the endpoint.

            • Locale — (String)

              The locale of the endpoint, in the following format: the ISO 639-1 alpha-2 code, followed by an underscore (_), followed by an ISO 3166-1 alpha-2 value.

            • Make — (String)

              The manufacturer of the endpoint device, such as apple or samsung.

            • Model — (String)

              The model name or number of the endpoint device, such as iPhone or SM-G900F.

            • ModelVersion — (String)

              The model version of the endpoint device.

            • Platform — (String)

              The platform of the endpoint device, such as ios.

            • PlatformVersion — (String)

              The platform version of the endpoint device.

            • Timezone — (String)

              The time zone of the endpoint, specified as a tz database name value, such as America/Los_Angeles.

          • EffectiveDate — (String)

            The date and time, in ISO 8601 format, when the endpoint was last updated.

          • EndpointStatus — (String)

            Specifies whether messages or push notifications are sent to the endpoint. Possible values are: ACTIVE, messages are sent to the endpoint; and, INACTIVE, messages aren’t sent to the endpoint.

            Amazon Pinpoint automatically sets this value to ACTIVE when you create an endpoint or update an existing endpoint. Amazon Pinpoint automatically sets this value to INACTIVE if you update another endpoint that has the same address specified by the Address property.

          • Id — (String)

            The unique identifier that you assigned to the endpoint. The identifier should be a globally unique identifier (GUID) to ensure that it doesn't conflict with other endpoint identifiers that are associated with the application.

          • Location — (map)

            The geographic information for the endpoint.

            • City — (String)

              The name of the city where the endpoint is located.

            • Country — (String)

              The two-character code, in ISO 3166-1 alpha-2 format, for the country or region where the endpoint is located. For example, US for the United States.

            • Latitude — (Float)

              The latitude coordinate of the endpoint location, rounded to one decimal place.

            • Longitude — (Float)

              The longitude coordinate of the endpoint location, rounded to one decimal place.

            • PostalCode — (String)

              The postal or ZIP code for the area where the endpoint is located.

            • Region — (String)

              The name of the region where the endpoint is located. For locations in the United States, this value is the name of a state.

          • Metrics — (map<Float>)

            One or more custom metrics that your app reports to Amazon Pinpoint for the endpoint.

          • OptOut — (String)

            Specifies whether the user who's associated with the endpoint has opted out of receiving messages and push notifications from you. Possible values are: ALL, the user has opted out and doesn't want to receive any messages or push notifications; and, NONE, the user hasn't opted out and wants to receive all messages and push notifications.

          • RequestId — (String)

            The unique identifier for the most recent request to update the endpoint.

          • User — (map)

            One or more custom user attributes that your app reports to Amazon Pinpoint for the user who's associated with the endpoint.

            • UserAttributes — (map<Array<String>>)

              One or more custom attributes that describe the user by associating a name with an array of values. For example, the value of an attribute named Interests might be: ["Science", "Music", "Travel"]. You can use these attributes as filter criteria when you create segments. Attribute names are case sensitive.

              An attribute name can contain up to 50 characters. An attribute value can contain up to 100 characters. When you define the name of a custom attribute, avoid using the following characters: number sign (#), colon (:), question mark (?), backslash (), and slash (/). The Amazon Pinpoint console can't display attribute names that contain these characters. This restriction doesn't apply to attribute values.

            • UserId — (String)

              The unique identifier for the user.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getVoiceChannel(params = {}, callback) ⇒ AWS.Request

Retrieves information about the status and settings of the voice channel for an application.

Service Reference:

Examples:

Calling the getVoiceChannel operation

var params = {
  ApplicationId: 'STRING_VALUE' /* required */
};
pinpoint.getVoiceChannel(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • VoiceChannelResponse — (map)

        Provides information about the status and settings of the voice channel for an application.

        • ApplicationId — (String)

          The unique identifier for the application that the voice channel applies to.

        • CreationDate — (String)

          The date and time, in ISO 8601 format, when the voice channel was enabled.

        • Enabled — (Boolean)

          Specifies whether the voice channel is enabled for the application.

        • HasCredential — (Boolean)

          (Not used) This property is retained only for backward compatibility.

        • Id — (String)

          (Deprecated) An identifier for the voice channel. This property is retained only for backward compatibility.

        • IsArchived — (Boolean)

          Specifies whether the voice channel is archived.

        • LastModifiedBy — (String)

          The user who last modified the voice channel.

        • LastModifiedDate — (String)

          The date and time, in ISO 8601 format, when the voice channel was last modified.

        • Platformrequired — (String)

          The type of messaging or notification platform for the channel. For the voice channel, this value is VOICE.

        • Version — (Integer)

          The current version of the voice channel.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

getVoiceTemplate(params = {}, callback) ⇒ AWS.Request

Retrieves the content and settings of a message template for messages that are sent through the voice channel.

Service Reference:

Examples:

Calling the getVoiceTemplate operation

var params = {
  TemplateName: 'STRING_VALUE', /* required */
  Version: 'STRING_VALUE'
};
pinpoint.getVoiceTemplate(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • TemplateName — (String)

      The name of the message template. A template name must start with an alphanumeric character and can contain a maximum of 128 characters. The characters can be alphanumeric characters, underscores (_), or hyphens (-). Template names are case sensitive.

    • Version — (String)

      The unique identifier for the version of the message template to update, retrieve information about, or delete. To retrieve identifiers and other information for all the versions of a template, use the Template Versions resource.

      If specified, this value must match the identifier for an existing template version. If specified for an update operation, this value must match the identifier for the latest existing version of the template. This restriction helps ensure that race conditions don't occur.

      If you don't specify a value for this parameter, Amazon Pinpoint does the following:

      • For a get operation, retrieves information about the active version of the template.

      • For an update operation, saves the updates to (overwrites) the latest existing version of the template, if the create-new-version parameter isn't used or is set to false.

      • For a delete operation, deletes the template, including all versions of the template.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • VoiceTemplateResponse — (map)

        Provides information about the content and settings for a message template that can be used in messages that are sent through the voice channel.

        • Arn — (String)

          The Amazon Resource Name (ARN) of the message template.

        • Body — (String)

          The text of the script that's used in messages that are based on the message template, in plain text format.

        • CreationDaterequired — (String)

          The date, in ISO 8601 format, when the message template was created.

        • DefaultSubstitutions — (String)

          The JSON object that specifies the default values that are used for message variables in the message template. This object is a set of key-value pairs. Each key defines a message variable in the template. The corresponding value defines the default value for that variable.

        • LanguageCode — (String)

          The code for the language that's used when synthesizing the text of the script in messages that are based on the message template. For a list of supported languages and the code for each one, see the Amazon Polly Developer Guide.

        • LastModifiedDaterequired — (String)

          The date, in ISO 8601 format, when the message template was last modified.

        • tags — (map<String>)

          A string-to-string map of key-value pairs that identifies the tags that are associated with the message template. Each tag consists of a required tag key and an associated tag value.

        • TemplateDescription — (String)

          The custom description of the message template.

        • TemplateNamerequired — (String)

          The name of the message template.

        • TemplateTyperequired — (String)

          The type of channel that the message template is designed for. For a voice template, this value is VOICE.

          Possible values include:
          • "EMAIL"
          • "SMS"
          • "VOICE"
          • "PUSH"
          • "INAPP"
        • Version — (String)

          The unique identifier, as an integer, for the active version of the message template, or the version of the template that you specified by using the version parameter in your request.

        • VoiceId — (String)

          The name of the voice that's used when delivering messages that are based on the message template. For a list of supported voices, see the Amazon Polly Developer Guide.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

listJourneys(params = {}, callback) ⇒ AWS.Request

Retrieves information about the status, configuration, and other settings for all the journeys that are associated with an application.

Service Reference:

Examples:

Calling the listJourneys operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  PageSize: 'STRING_VALUE',
  Token: 'STRING_VALUE'
};
pinpoint.listJourneys(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • PageSize — (String)

      The maximum number of items to include in each page of a paginated response. This parameter is not supported for application, campaign, and journey metrics.

    • Token — (String)

      The NextToken string that specifies which page of results to return in a paginated response.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • JourneysResponse — (map)

        Provides information about the status, configuration, and other settings for all the journeys that are associated with an application.

        • Itemrequired — (Array<map>)

          An array of responses, one for each journey that's associated with the application.

          • Activities — (map<map>)

            A map that contains a set of Activity objects, one object for each activity in the journey. For each Activity object, the key is the unique identifier (string) for an activity and the value is the settings for the activity.

            • CUSTOM — (map)

              The settings for a custom message activity. This type of activity calls an AWS Lambda function or web hook that sends messages to participants.

              • DeliveryUri — (String)

                The destination to send the campaign or treatment to. This value can be one of the following:

                • The name or Amazon Resource Name (ARN) of an AWS Lambda function to invoke to handle delivery of the campaign or treatment.

                • The URL for a web application or service that supports HTTPS and can receive the message. The URL has to be a full URL, including the HTTPS protocol.

              • EndpointTypes — (Array<String>)

                The types of endpoints to send the custom message to. Each valid value maps to a type of channel that you can associate with an endpoint by using the ChannelType property of an endpoint.

              • MessageConfig — (map)

                Specifies the message data included in a custom channel message that's sent to participants in a journey.

                • Data — (String)

                  The message content that's passed to an AWS Lambda function or to a web hook.

              • NextActivity — (String)

                The unique identifier for the next activity to perform, after Amazon Pinpoint calls the AWS Lambda function or web hook.

              • TemplateName — (String)

                The name of the custom message template to use for the message. If specified, this value must match the name of an existing message template.

              • TemplateVersion — (String)

                The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

            • ConditionalSplit — (map)

              The settings for a yes/no split activity. This type of activity sends participants down one of two paths in a journey, based on conditions that you specify.

              • Condition — (map)

                The conditions that define the paths for the activity, and the relationship between the conditions.

                • Conditions — (Array<map>)

                  The conditions to evaluate for the activity.

                  • EventCondition — (map)

                    The dimension settings for the event that's associated with the activity.

                    • Dimensions — (map)

                      The dimensions for the event filter to use for the activity.

                      • Attributes — (map<map>)

                        One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                        • AttributeType — (String)

                          The type of segment dimension to use. Valid values are:

                          • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                          • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                          • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                          • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                          • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                          • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                          • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                          • Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                            • "CONTAINS"
                            • "BEFORE"
                            • "AFTER"
                            • "ON"
                            • "BETWEEN"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                        • EventType — (map)

                          The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • Metrics — (map<map>)

                          One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                          • ComparisonOperatorrequired — (String)

                            The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                          • Valuerequired — (Float)

                            The value to compare.

                      • MessageActivity — (String)

                        The message identifier (message_id) for the message to use when determining whether message events meet the condition.

                    • SegmentCondition — (map)

                      The segment that's associated with the activity.

                      • SegmentIdrequired — (String)

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

                    • SegmentDimensions — (map)

                      The dimension settings for the segment that's associated with the activity.

                      • Attributes — (map<map>)

                        One or more custom attributes to use as criteria for the segment.

                        • AttributeType — (String)

                          The type of segment dimension to use. Valid values are:

                          • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                          • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                          • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                          • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                          • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                          • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                          • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                          • Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                            • "CONTAINS"
                            • "BEFORE"
                            • "AFTER"
                            • "ON"
                            • "BETWEEN"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                        • Behavior — (map)

                          The behavior-based criteria, such as how recently users have used your app, for the segment.

                          • Recency — (map)

                            The dimension settings that are based on how recently an endpoint was active.

                            • Durationrequired — (String)

                              The duration to use when determining whether an endpoint is active or inactive.

                              Possible values include:
                              • "HR_24"
                              • "DAY_7"
                              • "DAY_14"
                              • "DAY_30"
                            • RecencyTyperequired — (String)

                              The type of recency dimension to use for the segment. Valid values are: ACTIVE, endpoints that were active within the specified duration are included in the segment; and, INACTIVE, endpoints that weren't active within the specified duration are included in the segment.

                              Possible values include:
                              • "ACTIVE"
                              • "INACTIVE"
                        • Demographic — (map)

                          The demographic-based criteria, such as device platform, for the segment.

                          • AppVersion — (map)

                            The app version criteria for the segment.

                            • DimensionType — (String)

                              The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                              Possible values include:
                              • "INCLUSIVE"
                              • "EXCLUSIVE"
                            • Valuesrequired — (Array<String>)

                              The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                          • Channel — (map)

                            The channel criteria for the segment.

                            • DimensionType — (String)

                              The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                              Possible values include:
                              • "INCLUSIVE"
                              • "EXCLUSIVE"
                            • Valuesrequired — (Array<String>)

                              The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                          • DeviceType — (map)

                            The device type criteria for the segment.

                            • DimensionType — (String)

                              The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                              Possible values include:
                              • "INCLUSIVE"
                              • "EXCLUSIVE"
                            • Valuesrequired — (Array<String>)

                              The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                          • Make — (map)

                            The device make criteria for the segment.

                            • DimensionType — (String)

                              The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                              Possible values include:
                              • "INCLUSIVE"
                              • "EXCLUSIVE"
                            • Valuesrequired — (Array<String>)

                              The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                          • Model — (map)

                            The device model criteria for the segment.

                            • DimensionType — (String)

                              The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                              Possible values include:
                              • "INCLUSIVE"
                              • "EXCLUSIVE"
                            • Valuesrequired — (Array<String>)

                              The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                          • Platform — (map)

                            The device platform criteria for the segment.

                            • DimensionType — (String)

                              The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                              Possible values include:
                              • "INCLUSIVE"
                              • "EXCLUSIVE"
                            • Valuesrequired — (Array<String>)

                              The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • Location — (map)

                          The location-based criteria, such as region or GPS coordinates, for the segment.

                          • Country — (map)

                            The country or region code, in ISO 3166-1 alpha-2 format, for the segment.

                            • DimensionType — (String)

                              The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                              Possible values include:
                              • "INCLUSIVE"
                              • "EXCLUSIVE"
                            • Valuesrequired — (Array<String>)

                              The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                          • GPSPoint — (map)

                            The GPS location and range for the segment.

                            • Coordinatesrequired — (map)

                              The GPS coordinates to measure distance from.

                              • Latituderequired — (Float)

                                The latitude coordinate of the location.

                              • Longituderequired — (Float)

                                The longitude coordinate of the location.

                            • RangeInKilometers — (Float)

                              The range, in kilometers, from the GPS coordinates.

                        • Metrics — (map<map>)

                          One or more custom metrics to use as criteria for the segment.

                          • ComparisonOperatorrequired — (String)

                            The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                          • Valuerequired — (Float)

                            The value to compare.

                        • UserAttributes — (map<map>)

                          One or more custom user attributes to use as criteria for the segment.

                          • AttributeType — (String)

                            The type of segment dimension to use. Valid values are:

                            • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                            • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                            • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                            • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                            • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                            • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                            • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                            • Possible values include:
                              • "INCLUSIVE"
                              • "EXCLUSIVE"
                              • "CONTAINS"
                              • "BEFORE"
                              • "AFTER"
                              • "ON"
                              • "BETWEEN"
                            • Valuesrequired — (Array<String>)

                              The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                      • Operator — (String)

                        Specifies how to handle multiple conditions for the activity. For example, if you specify two conditions for an activity, whether both or only one of the conditions must be met for the activity to be performed.

                        Possible values include:
                        • "ALL"
                        • "ANY"
                    • EvaluationWaitTime — (map)

                      The amount of time to wait before determining whether the conditions are met, or the date and time when Amazon Pinpoint determines whether the conditions are met.

                      • WaitFor — (String)

                        The amount of time to wait, as a duration in ISO 8601 format, before determining whether the activity's conditions have been met or moving participants to the next activity in the journey.

                      • WaitUntil — (String)

                        The date and time, in ISO 8601 format, when Amazon Pinpoint determines whether the activity's conditions have been met or the activity moves participants to the next activity in the journey.

                    • FalseActivity — (String)

                      The unique identifier for the activity to perform if the conditions aren't met.

                    • TrueActivity — (String)

                      The unique identifier for the activity to perform if the conditions are met.

                  • Description — (String)

                    The custom description of the activity.

                  • EMAIL — (map)

                    The settings for an email activity. This type of activity sends an email message to participants.

                    • MessageConfig — (map)

                      Specifies the sender address for an email message that's sent to participants in the journey.

                      • FromAddress — (String)

                        The verified email address to send the email message from. The default address is the FromAddress specified for the email channel for the application.

                    • NextActivity — (String)

                      The unique identifier for the next activity to perform, after the message is sent.

                    • TemplateName — (String)

                      The name of the email message template to use for the message. If specified, this value must match the name of an existing message template.

                    • TemplateVersion — (String)

                      The unique identifier for the version of the email template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                      If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

                  • Holdout — (map)

                    The settings for a holdout activity. This type of activity stops a journey for a specified percentage of participants.

                    • NextActivity — (String)

                      The unique identifier for the next activity to perform, after performing the holdout activity.

                    • Percentagerequired — (Integer)

                      The percentage of participants who shouldn't continue the journey.

                      To determine which participants are held out, Amazon Pinpoint applies a probability-based algorithm to the percentage that you specify. Therefore, the actual percentage of participants who are held out may not be equal to the percentage that you specify.

                  • MultiCondition — (map)

                    The settings for a multivariate split activity. This type of activity sends participants down one of as many as five paths (including a default Else path) in a journey, based on conditions that you specify.

                    • Branches — (Array<map>)

                      The paths for the activity, including the conditions for entering each path and the activity to perform for each path.

                      • Condition — (map)

                        The condition to evaluate for the activity path.

                        • EventCondition — (map)

                          The dimension settings for the event that's associated with the activity.

                          • Dimensions — (map)

                            The dimensions for the event filter to use for the activity.

                            • Attributes — (map<map>)

                              One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                              • AttributeType — (String)

                                The type of segment dimension to use. Valid values are:

                                • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                                • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                                • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                                • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                                • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                                • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                                • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                                • Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                  • "CONTAINS"
                                  • "BEFORE"
                                  • "AFTER"
                                  • "ON"
                                  • "BETWEEN"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                              • EventType — (map)

                                The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                                • DimensionType — (String)

                                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                  Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                              • Metrics — (map<map>)

                                One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                                • ComparisonOperatorrequired — (String)

                                  The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                                • Valuerequired — (Float)

                                  The value to compare.

                            • MessageActivity — (String)

                              The message identifier (message_id) for the message to use when determining whether message events meet the condition.

                          • SegmentCondition — (map)

                            The segment that's associated with the activity.

                            • SegmentIdrequired — (String)

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

                          • SegmentDimensions — (map)

                            The dimension settings for the segment that's associated with the activity.

                            • Attributes — (map<map>)

                              One or more custom attributes to use as criteria for the segment.

                              • AttributeType — (String)

                                The type of segment dimension to use. Valid values are:

                                • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                                • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                                • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                                • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                                • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                                • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                                • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                                • Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                  • "CONTAINS"
                                  • "BEFORE"
                                  • "AFTER"
                                  • "ON"
                                  • "BETWEEN"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                              • Behavior — (map)

                                The behavior-based criteria, such as how recently users have used your app, for the segment.

                                • Recency — (map)

                                  The dimension settings that are based on how recently an endpoint was active.

                                  • Durationrequired — (String)

                                    The duration to use when determining whether an endpoint is active or inactive.

                                    Possible values include:
                                    • "HR_24"
                                    • "DAY_7"
                                    • "DAY_14"
                                    • "DAY_30"
                                  • RecencyTyperequired — (String)

                                    The type of recency dimension to use for the segment. Valid values are: ACTIVE, endpoints that were active within the specified duration are included in the segment; and, INACTIVE, endpoints that weren't active within the specified duration are included in the segment.

                                    Possible values include:
                                    • "ACTIVE"
                                    • "INACTIVE"
                              • Demographic — (map)

                                The demographic-based criteria, such as device platform, for the segment.

                                • AppVersion — (map)

                                  The app version criteria for the segment.

                                  • DimensionType — (String)

                                    The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                    Possible values include:
                                    • "INCLUSIVE"
                                    • "EXCLUSIVE"
                                  • Valuesrequired — (Array<String>)

                                    The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                                • Channel — (map)

                                  The channel criteria for the segment.

                                  • DimensionType — (String)

                                    The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                    Possible values include:
                                    • "INCLUSIVE"
                                    • "EXCLUSIVE"
                                  • Valuesrequired — (Array<String>)

                                    The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                                • DeviceType — (map)

                                  The device type criteria for the segment.

                                  • DimensionType — (String)

                                    The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                    Possible values include:
                                    • "INCLUSIVE"
                                    • "EXCLUSIVE"
                                  • Valuesrequired — (Array<String>)

                                    The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                                • Make — (map)

                                  The device make criteria for the segment.

                                  • DimensionType — (String)

                                    The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                    Possible values include:
                                    • "INCLUSIVE"
                                    • "EXCLUSIVE"
                                  • Valuesrequired — (Array<String>)

                                    The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                                • Model — (map)

                                  The device model criteria for the segment.

                                  • DimensionType — (String)

                                    The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                    Possible values include:
                                    • "INCLUSIVE"
                                    • "EXCLUSIVE"
                                  • Valuesrequired — (Array<String>)

                                    The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                                • Platform — (map)

                                  The device platform criteria for the segment.

                                  • DimensionType — (String)

                                    The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                    Possible values include:
                                    • "INCLUSIVE"
                                    • "EXCLUSIVE"
                                  • Valuesrequired — (Array<String>)

                                    The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                              • Location — (map)

                                The location-based criteria, such as region or GPS coordinates, for the segment.

                                • Country — (map)

                                  The country or region code, in ISO 3166-1 alpha-2 format, for the segment.

                                  • DimensionType — (String)

                                    The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                    Possible values include:
                                    • "INCLUSIVE"
                                    • "EXCLUSIVE"
                                  • Valuesrequired — (Array<String>)

                                    The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                                • GPSPoint — (map)

                                  The GPS location and range for the segment.

                                  • Coordinatesrequired — (map)

                                    The GPS coordinates to measure distance from.

                                    • Latituderequired — (Float)

                                      The latitude coordinate of the location.

                                    • Longituderequired — (Float)

                                      The longitude coordinate of the location.

                                  • RangeInKilometers — (Float)

                                    The range, in kilometers, from the GPS coordinates.

                              • Metrics — (map<map>)

                                One or more custom metrics to use as criteria for the segment.

                                • ComparisonOperatorrequired — (String)

                                  The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                                • Valuerequired — (Float)

                                  The value to compare.

                              • UserAttributes — (map<map>)

                                One or more custom user attributes to use as criteria for the segment.

                                • AttributeType — (String)

                                  The type of segment dimension to use. Valid values are:

                                  • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                                  • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                                  • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                                  • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                                  • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                                  • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                                  • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                                  • Possible values include:
                                    • "INCLUSIVE"
                                    • "EXCLUSIVE"
                                    • "CONTAINS"
                                    • "BEFORE"
                                    • "AFTER"
                                    • "ON"
                                    • "BETWEEN"
                                  • Valuesrequired — (Array<String>)

                                    The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                            • NextActivity — (String)

                              The unique identifier for the next activity to perform, after completing the activity for the path.

                          • DefaultActivity — (String)

                            The unique identifier for the activity to perform for participants who don't meet any of the conditions specified for other paths in the activity.

                          • EvaluationWaitTime — (map)

                            The amount of time to wait or the date and time when Amazon Pinpoint determines whether the conditions are met.

                            • WaitFor — (String)

                              The amount of time to wait, as a duration in ISO 8601 format, before determining whether the activity's conditions have been met or moving participants to the next activity in the journey.

                            • WaitUntil — (String)

                              The date and time, in ISO 8601 format, when Amazon Pinpoint determines whether the activity's conditions have been met or the activity moves participants to the next activity in the journey.

                        • PUSH — (map)

                          The settings for a push notification activity. This type of activity sends a push notification to participants.

                          • MessageConfig — (map)

                            Specifies the time to live (TTL) value for push notifications that are sent to participants in a journey.

                            • TimeToLive — (String)

                              The number of seconds that the push notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                              This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

                          • NextActivity — (String)

                            The unique identifier for the next activity to perform, after the message is sent.

                          • TemplateName — (String)

                            The name of the push notification template to use for the message. If specified, this value must match the name of an existing message template.

                          • TemplateVersion — (String)

                            The unique identifier for the version of the push notification template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                            If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

                        • RandomSplit — (map)

                          The settings for a random split activity. This type of activity randomly sends specified percentages of participants down one of as many as five paths in a journey, based on conditions that you specify.

                          • Branches — (Array<map>)

                            The paths for the activity, including the percentage of participants to enter each path and the activity to perform for each path.

                            • NextActivity — (String)

                              The unique identifier for the next activity to perform, after completing the activity for the path.

                            • Percentage — (Integer)

                              The percentage of participants to send down the activity path.

                              To determine which participants are sent down each path, Amazon Pinpoint applies a probability-based algorithm to the percentages that you specify for the paths. Therefore, the actual percentage of participants who are sent down a path may not be equal to the percentage that you specify.

                        • SMS — (map)

                          The settings for an SMS activity. This type of activity sends a text message to participants.

                          • MessageConfig — (map)

                            Specifies the sender ID and message type for an SMS message that's sent to participants in a journey.

                            • MessageType — (String)

                              The SMS message type. Valid values are TRANSACTIONAL (for messages that are critical or time-sensitive, such as a one-time passwords) and PROMOTIONAL (for messsages that aren't critical or time-sensitive, such as marketing messages).

                              Possible values include:
                              • "TRANSACTIONAL"
                              • "PROMOTIONAL"
                            • OriginationNumber — (String)

                              The long code to send the SMS message from. This value should be one of the dedicated long codes that's assigned to your AWS account. Although it isn't required, we recommend that you specify the long code using an E.164 format to ensure prompt and accurate delivery of the message. For example, +12065550100.

                            • SenderId — (String)

                              The sender ID to display as the sender of the message on a recipient's device. Support for sender IDs varies by country or region. For more information, see Supported Countries and Regions in the Amazon Pinpoint User Guide.

                            • EntityId — (String)

                              The entity ID or Principal Entity (PE) id received from the regulatory body for sending SMS in your country.

                            • TemplateId — (String)

                              The template ID received from the regulatory body for sending SMS in your country.

                          • NextActivity — (String)

                            The unique identifier for the next activity to perform, after the message is sent.

                          • TemplateName — (String)

                            The name of the SMS message template to use for the message. If specified, this value must match the name of an existing message template.

                          • TemplateVersion — (String)

                            The unique identifier for the version of the SMS template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                            If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

                        • Wait — (map)

                          The settings for a wait activity. This type of activity waits for a certain amount of time or until a specific date and time before moving participants to the next activity in a journey.

                          • NextActivity — (String)

                            The unique identifier for the next activity to perform, after performing the wait activity.

                          • WaitTime — (map)

                            The amount of time to wait or the date and time when the activity moves participants to the next activity in the journey.

                            • WaitFor — (String)

                              The amount of time to wait, as a duration in ISO 8601 format, before determining whether the activity's conditions have been met or moving participants to the next activity in the journey.

                            • WaitUntil — (String)

                              The date and time, in ISO 8601 format, when Amazon Pinpoint determines whether the activity's conditions have been met or the activity moves participants to the next activity in the journey.

                        • ContactCenter — (map)

                          The settings for a connect activity. This type of activity initiates a contact center call to participants.

                          • NextActivity — (String)

                            The unique identifier for the next activity to perform after the this activity.

                      • ApplicationIdrequired — (String)

                        The unique identifier for the application that the journey applies to.

                      • CreationDate — (String)

                        The date, in ISO 8601 format, when the journey was created.

                      • Idrequired — (String)

                        The unique identifier for the journey.

                      • LastModifiedDate — (String)

                        The date, in ISO 8601 format, when the journey was last modified.

                      • Limits — (map)

                        The messaging and entry limits for the journey.

                        • DailyCap — (Integer)

                          The maximum number of messages that the journey can send to a single participant during a 24-hour period. The maximum value is 100.

                        • EndpointReentryCap — (Integer)

                          The maximum number of times that a participant can enter the journey. The maximum value is 100. To allow participants to enter the journey an unlimited number of times, set this value to 0.

                        • MessagesPerSecond — (Integer)

                          The maximum number of messages that the journey can send each second.

                        • EndpointReentryInterval — (String)

                          Minimum time that must pass before an endpoint can re-enter a given journey. The duration should use an ISO 8601 format, such as PT1H.

                        • TimeframeCap — (map)

                          The number of messages that an endpoint can receive during the specified timeframe.

                          • Cap — (Integer)

                            The maximum number of messages that all journeys can send to an endpoint during the specified timeframe. The maximum value is 100. If set to 0, this limit will not apply.

                          • Days — (Integer)

                            The length of the timeframe in days. The maximum value is 30. If set to 0, this limit will not apply.

                        • TotalCap — (Integer)

                          The maximum number of messages a journey can sent to a single endpoint. The maximum value is 100. If set to 0, this limit will not apply.

                      • LocalTime — (Boolean)

                        Specifies whether the journey's scheduled start and end times use each participant's local time. If this value is true, the schedule uses each participant's local time.

                      • Namerequired — (String)

                        The name of the journey.

                      • QuietTime — (map)

                        The quiet time settings for the journey. Quiet time is a specific time range when a journey doesn't send messages to participants, if all the following conditions are met:

                        • The EndpointDemographic.Timezone property of the endpoint for the participant is set to a valid value.

                        • The current time in the participant's time zone is later than or equal to the time specified by the QuietTime.Start property for the journey.

                        • The current time in the participant's time zone is earlier than or equal to the time specified by the QuietTime.End property for the journey.

                        If any of the preceding conditions isn't met, the participant will receive messages from the journey, even if quiet time is enabled.

                        • End — (String)

                          The specific time when quiet time ends. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

                        • Start — (String)

                          The specific time when quiet time begins. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

                      • RefreshFrequency — (String)

                        The frequency with which Amazon Pinpoint evaluates segment and event data for the journey, as a duration in ISO 8601 format.

                      • Schedule — (map)

                        The schedule settings for the journey.

                        • EndTime — (Date)

                          The scheduled time, in ISO 8601 format, when the journey ended or will end.

                        • StartTime — (Date)

                          The scheduled time, in ISO 8601 format, when the journey began or will begin.

                        • Timezone — (String)

                          The starting UTC offset for the journey schedule, if the value of the journey's LocalTime property is true. Valid values are: UTC, UTC+01, UTC+02, UTC+03, UTC+03:30, UTC+04, UTC+04:30, UTC+05, UTC+05:30, UTC+05:45, UTC+06, UTC+06:30, UTC+07, UTC+08, UTC+08:45, UTC+09, UTC+09:30, UTC+10, UTC+10:30, UTC+11, UTC+12, UTC+12:45, UTC+13, UTC+13:45, UTC-02, UTC-02:30, UTC-03, UTC-03:30, UTC-04, UTC-05, UTC-06, UTC-07, UTC-08, UTC-09, UTC-09:30, UTC-10, and UTC-11.

                      • StartActivity — (String)

                        The unique identifier for the first activity in the journey.

                      • StartCondition — (map)

                        The segment that defines which users are participants in the journey.

                        • Description — (String)

                          The custom description of the condition.

                        • EventStartCondition — (map)

                          Specifies the settings for an event that causes a journey activity to start.

                          • EventFilter — (map)

                            Specifies the settings for an event that causes a campaign to be sent or a journey activity to be performed.

                            • Dimensionsrequired — (map)

                              The dimensions for the event filter to use for the campaign or the journey activity.

                              • Attributes — (map<map>)

                                One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                                • AttributeType — (String)

                                  The type of segment dimension to use. Valid values are:

                                  • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                                  • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                                  • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                                  • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                                  • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                                  • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                                  • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                                  • Possible values include:
                                    • "INCLUSIVE"
                                    • "EXCLUSIVE"
                                    • "CONTAINS"
                                    • "BEFORE"
                                    • "AFTER"
                                    • "ON"
                                    • "BETWEEN"
                                  • Valuesrequired — (Array<String>)

                                    The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                                • EventType — (map)

                                  The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                                  • DimensionType — (String)

                                    The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                    Possible values include:
                                    • "INCLUSIVE"
                                    • "EXCLUSIVE"
                                  • Valuesrequired — (Array<String>)

                                    The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                                • Metrics — (map<map>)

                                  One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                                  • ComparisonOperatorrequired — (String)

                                    The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                                  • Valuerequired — (Float)

                                    The value to compare.

                              • FilterTyperequired — (String)

                                The type of event that causes the campaign to be sent or the journey activity to be performed. Valid values are: SYSTEM, sends the campaign or performs the activity when a system event occurs; and, ENDPOINT, sends the campaign or performs the activity when an endpoint event (Events resource) occurs.

                                Possible values include:
                                • "SYSTEM"
                                • "ENDPOINT"
                            • SegmentId — (String)
                          • SegmentStartCondition — (map)

                            The segment that's associated with the first activity in the journey. This segment determines which users are participants in the journey.

                            • SegmentIdrequired — (String)

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

                        • State — (String)

                          The current status of the journey. Possible values are:

                          • DRAFT - The journey is being developed and hasn't been published yet.

                          • ACTIVE - The journey has been developed and published. Depending on the journey's schedule, the journey may currently be running or scheduled to start running at a later time. If a journey's status is ACTIVE, you can't add, change, or remove activities from it.

                          • COMPLETED - The journey has been published and has finished running. All participants have entered the journey and no participants are waiting to complete the journey or any activities in the journey.

                          • CANCELLED - The journey has been stopped. If a journey's status is CANCELLED, you can't add, change, or remove activities or segment settings from the journey.

                          • CLOSED - The journey has been published and has started running. It may have also passed its scheduled end time, or passed its scheduled start time and a refresh frequency hasn't been specified for it. If a journey's status is CLOSED, you can't add participants to it, and no existing participants can enter the journey for the first time. However, any existing participants who are currently waiting to start an activity may continue the journey.

                          Possible values include:
                          • "DRAFT"
                          • "ACTIVE"
                          • "COMPLETED"
                          • "CANCELLED"
                          • "CLOSED"
                          • "PAUSED"
                        • tags — (map<String>)

                          This object is not used or supported.

                        • WaitForQuietTime — (Boolean)

                          Indicates whether endpoints in quiet hours should enter a wait activity until quiet hours have elapsed.

                        • RefreshOnSegmentUpdate — (Boolean)

                          Indicates whether the journey participants should be refreshed when a segment is updated.

                        • JourneyChannelSettings — (map)

                          The channel-specific configurations for the journey.

                          • ConnectCampaignArn — (String)

                            Amazon Resource Name (ARN) of the Connect Campaign.

                          • ConnectCampaignExecutionRoleArn — (String)

                            IAM role ARN to be assumed when invoking Connect campaign execution APIs for dialing.

                        • SendingSchedule — (Boolean)

                          Indicates if journey has Advance Quiet Time enabled. This flag should be set to true in order to allow using OpenHours and ClosedDays.

                        • OpenHours — (map)

                          The time when a journey can send messages. QuietTime should be configured first and SendingSchedule should be set to true.

                          • EMAIL — (map<Array<map>>)

                            Specifies the schedule settings for the email channel.

                            • StartTime — (String)

                              The start of the scheduled time, in ISO 8601 format, when the channel can send messages.

                            • EndTime — (String)

                              The end of the scheduled time, in ISO 8601 format, when the channel can't send messages.

                          • SMS — (map<Array<map>>)

                            Specifies the schedule settings for the SMS channel.

                            • StartTime — (String)

                              The start of the scheduled time, in ISO 8601 format, when the channel can send messages.

                            • EndTime — (String)

                              The end of the scheduled time, in ISO 8601 format, when the channel can't send messages.

                          • PUSH — (map<Array<map>>)

                            Specifies the schedule settings for the push channel.

                            • StartTime — (String)

                              The start of the scheduled time, in ISO 8601 format, when the channel can send messages.

                            • EndTime — (String)

                              The end of the scheduled time, in ISO 8601 format, when the channel can't send messages.

                          • VOICE — (map<Array<map>>)

                            Specifies the schedule settings for the voice channel.

                            • StartTime — (String)

                              The start of the scheduled time, in ISO 8601 format, when the channel can send messages.

                            • EndTime — (String)

                              The end of the scheduled time, in ISO 8601 format, when the channel can't send messages.

                          • CUSTOM — (map<Array<map>>)

                            Specifies the schedule settings for the custom channel.

                            • StartTime — (String)

                              The start of the scheduled time, in ISO 8601 format, when the channel can send messages.

                            • EndTime — (String)

                              The end of the scheduled time, in ISO 8601 format, when the channel can't send messages.

                        • ClosedDays — (map)

                          The time when a journey will not send messages. QuietTime should be configured first and SendingSchedule should be set to true.

                          • EMAIL — (Array<map>)

                            Rules for the Email channel.

                            • Name — (String)

                              The name of the closed day rule.

                            • StartDateTime — (String)

                              Start DateTime ISO 8601 format

                            • EndDateTime — (String)

                              End DateTime ISO 8601 format

                          • SMS — (Array<map>)

                            Rules for the SMS channel.

                            • Name — (String)

                              The name of the closed day rule.

                            • StartDateTime — (String)

                              Start DateTime ISO 8601 format

                            • EndDateTime — (String)

                              End DateTime ISO 8601 format

                          • PUSH — (Array<map>)

                            Rules for the Push channel.

                            • Name — (String)

                              The name of the closed day rule.

                            • StartDateTime — (String)

                              Start DateTime ISO 8601 format

                            • EndDateTime — (String)

                              End DateTime ISO 8601 format

                          • VOICE — (Array<map>)

                            Rules for the Voice channel.

                            • Name — (String)

                              The name of the closed day rule.

                            • StartDateTime — (String)

                              Start DateTime ISO 8601 format

                            • EndDateTime — (String)

                              End DateTime ISO 8601 format

                          • CUSTOM — (Array<map>)

                            Rules for the Custom channel.

                            • Name — (String)

                              The name of the closed day rule.

                            • StartDateTime — (String)

                              Start DateTime ISO 8601 format

                            • EndDateTime — (String)

                              End DateTime ISO 8601 format

                        • TimezoneEstimationMethods — (Array<String>)

                          An array of time zone estimation methods, if any, to use for determining an Endpoints time zone if the Endpoint does not have a value for the Demographic.Timezone attribute.

                          • PHONE_NUMBER - A time zone is determined based on the Endpoint.Address and Endpoint.Location.Country.

                          • POSTAL_CODE - A time zone is determined based on the Endpoint.Location.PostalCode and Endpoint.Location.Country.

                            Note: POSTAL_CODE detection is only supported in the United States, United Kingdom, Australia, New Zealand, Canada, France, Italy, Spain, Germany and in regions where Amazon Pinpoint is available.
                      • NextToken — (String)

                        The string to use in a subsequent request to get the next page of results in a paginated response. This value is null if there are no additional pages.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

listTagsForResource(params = {}, callback) ⇒ AWS.Request

Retrieves all the tags (keys and values) that are associated with an application, campaign, message template, or segment.

Service Reference:

Examples:

Calling the listTagsForResource operation

var params = {
  ResourceArn: 'STRING_VALUE' /* required */
};
pinpoint.listTagsForResource(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ResourceArn — (String)

      The Amazon Resource Name (ARN) of the resource.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • TagsModel — (map)

        Specifies the tags (keys and values) for an application, campaign, message template, or segment.

        • tagsrequired — (map<String>)

          A string-to-string map of key-value pairs that defines the tags for an application, campaign, message template, or segment. Each of these resources can have a maximum of 50 tags.

          Each tag consists of a required tag key and an associated tag value. The maximum length of a tag key is 128 characters. The maximum length of a tag value is 256 characters.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

listTemplates(params = {}, callback) ⇒ AWS.Request

Retrieves information about all the message templates that are associated with your Amazon Pinpoint account.

Service Reference:

Examples:

Calling the listTemplates operation

var params = {
  NextToken: 'STRING_VALUE',
  PageSize: 'STRING_VALUE',
  Prefix: 'STRING_VALUE',
  TemplateType: 'STRING_VALUE'
};
pinpoint.listTemplates(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • NextToken — (String)

      The string that specifies which page of results to return in a paginated response. This parameter is not supported for application, campaign, and journey metrics.

    • PageSize — (String)

      The maximum number of items to include in each page of a paginated response. This parameter is not supported for application, campaign, and journey metrics.

    • Prefix — (String)

      The substring to match in the names of the message templates to include in the results. If you specify this value, Amazon Pinpoint returns only those templates whose names begin with the value that you specify.

    • TemplateType — (String)

      The type of message template to include in the results. Valid values are: EMAIL, PUSH, SMS, and VOICE. To include all types of templates in the results, don't include this parameter in your request.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • TemplatesResponse — (map)

        Provides information about all the message templates that are associated with your Amazon Pinpoint account.

        • Itemrequired — (Array<map>)

          An array of responses, one for each message template that's associated with your Amazon Pinpoint account and meets any filter criteria that you specified in the request.

          • Arn — (String)

            The Amazon Resource Name (ARN) of the message template. This value isn't included in a TemplateResponse object. To retrieve the ARN of a template, use the GetEmailTemplate, GetPushTemplate, GetSmsTemplate, or GetVoiceTemplate operation, depending on the type of template that you want to retrieve the ARN for.

          • CreationDaterequired — (String)

            The date, in ISO 8601 format, when the message template was created.

          • DefaultSubstitutions — (String)

            The JSON object that specifies the default values that are used for message variables in the message template. This object isn't included in a TemplateResponse object. To retrieve this object for a template, use the GetEmailTemplate, GetPushTemplate, GetSmsTemplate, or GetVoiceTemplate operation, depending on the type of template that you want to retrieve the object for.

          • LastModifiedDaterequired — (String)

            The date, in ISO 8601 format, when the message template was last modified.

          • tags — (map<String>)

            A map of key-value pairs that identifies the tags that are associated with the message template. This object isn't included in a TemplateResponse object. To retrieve this object for a template, use the GetEmailTemplate, GetPushTemplate, GetSmsTemplate, or GetVoiceTemplate operation, depending on the type of template that you want to retrieve the object for.

          • TemplateDescription — (String)

            The custom description of the message template. This value isn't included in a TemplateResponse object. To retrieve the description of a template, use the GetEmailTemplate, GetPushTemplate, GetSmsTemplate, or GetVoiceTemplate operation, depending on the type of template that you want to retrieve the description for.

          • TemplateNamerequired — (String)

            The name of the message template.

          • TemplateTyperequired — (String)

            The type of channel that the message template is designed for. Possible values are: EMAIL, PUSH, SMS, INAPP, and VOICE.

            Possible values include:
            • "EMAIL"
            • "SMS"
            • "VOICE"
            • "PUSH"
            • "INAPP"
          • Version — (String)

            The unique identifier, as an integer, for the active version of the message template.

        • NextToken — (String)

          The string to use in a subsequent request to get the next page of results in a paginated response. This value is null if there are no additional pages.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

listTemplateVersions(params = {}, callback) ⇒ AWS.Request

Retrieves information about all the versions of a specific message template.

Service Reference:

Examples:

Calling the listTemplateVersions operation

var params = {
  TemplateName: 'STRING_VALUE', /* required */
  TemplateType: 'STRING_VALUE', /* required */
  NextToken: 'STRING_VALUE',
  PageSize: 'STRING_VALUE'
};
pinpoint.listTemplateVersions(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • NextToken — (String)

      The string that specifies which page of results to return in a paginated response. This parameter is not supported for application, campaign, and journey metrics.

    • PageSize — (String)

      The maximum number of items to include in each page of a paginated response. This parameter is not supported for application, campaign, and journey metrics.

    • TemplateName — (String)

      The name of the message template. A template name must start with an alphanumeric character and can contain a maximum of 128 characters. The characters can be alphanumeric characters, underscores (_), or hyphens (-). Template names are case sensitive.

    • TemplateType — (String)

      The type of channel that the message template is designed for. Valid values are: EMAIL, PUSH, SMS, and VOICE.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • TemplateVersionsResponse — (map)

        Provides information about all the versions of a specific message template.

        • Itemrequired — (Array<map>)

          An array of responses, one for each version of the message template.

          • CreationDaterequired — (String)

            The date, in ISO 8601 format, when the version of the message template was created.

          • DefaultSubstitutions — (String)

            A JSON object that specifies the default values that are used for message variables in the version of the message template. This object is a set of key-value pairs. Each key defines a message variable in the template. The corresponding value defines the default value for that variable.

          • LastModifiedDaterequired — (String)

            The date, in ISO 8601 format, when the version of the message template was last modified.

          • TemplateDescription — (String)

            The custom description of the version of the message template.

          • TemplateNamerequired — (String)

            The name of the message template.

          • TemplateTyperequired — (String)

            The type of channel that the message template is designed for. Possible values are: EMAIL, PUSH, SMS, INAPP, and VOICE.

          • Version — (String)

            The unique identifier for the version of the message template. This value is an integer that Amazon Pinpoint automatically increments and assigns to each new version of a template.

        • Message — (String)

          The message that's returned from the API for the request to retrieve information about all the versions of the message template.

        • NextToken — (String)

          The string to use in a subsequent request to get the next page of results in a paginated response. This value is null if there are no additional pages.

        • RequestID — (String)

          The unique identifier for the request to retrieve information about all the versions of the message template.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

phoneNumberValidate(params = {}, callback) ⇒ AWS.Request

Retrieves information about a phone number.

Service Reference:

Examples:

Calling the phoneNumberValidate operation

var params = {
  NumberValidateRequest: { /* required */
    IsoCountryCode: 'STRING_VALUE',
    PhoneNumber: 'STRING_VALUE'
  }
};
pinpoint.phoneNumberValidate(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • NumberValidateRequest — (map)

      Specifies a phone number to validate and retrieve information about.

      • IsoCountryCode — (String)

        The two-character code, in ISO 3166-1 alpha-2 format, for the country or region where the phone number was originally registered.

      • PhoneNumber — (String)

        The phone number to retrieve information about. The phone number that you provide should include a valid numeric country code. Otherwise, the operation might result in an error.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • NumberValidateResponse — (map)

        Provides information about a phone number.

        • Carrier — (String)

          The carrier or service provider that the phone number is currently registered with. In some countries and regions, this value may be the carrier or service provider that the phone number was originally registered with.

        • City — (String)

          The name of the city where the phone number was originally registered.

        • CleansedPhoneNumberE164 — (String)

          The cleansed phone number, in E.164 format, for the location where the phone number was originally registered.

        • CleansedPhoneNumberNational — (String)

          The cleansed phone number, in the format for the location where the phone number was originally registered.

        • Country — (String)

          The name of the country or region where the phone number was originally registered.

        • CountryCodeIso2 — (String)

          The two-character code, in ISO 3166-1 alpha-2 format, for the country or region where the phone number was originally registered.

        • CountryCodeNumeric — (String)

          The numeric code for the country or region where the phone number was originally registered.

        • County — (String)

          The name of the county where the phone number was originally registered.

        • OriginalCountryCodeIso2 — (String)

          The two-character code, in ISO 3166-1 alpha-2 format, that was sent in the request body.

        • OriginalPhoneNumber — (String)

          The phone number that was sent in the request body.

        • PhoneType — (String)

          The description of the phone type. Valid values are: MOBILE, LANDLINE, VOIP, INVALID, PREPAID, and OTHER.

        • PhoneTypeCode — (Integer)

          The phone type, represented by an integer. Valid values are: 0 (mobile), 1 (landline), 2 (VoIP), 3 (invalid), 4 (other), and 5 (prepaid).

        • Timezone — (String)

          The time zone for the location where the phone number was originally registered.

        • ZipCode — (String)

          The postal or ZIP code for the location where the phone number was originally registered.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

putEvents(params = {}, callback) ⇒ AWS.Request

Creates a new event to record for endpoints, or creates or updates endpoint data that existing events are associated with.

Service Reference:

Examples:

Calling the putEvents operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  EventsRequest: { /* required */
    BatchItem: { /* required */
      '<__string>': {
        Endpoint: { /* required */
          Address: 'STRING_VALUE',
          Attributes: {
            '<__string>': [
              'STRING_VALUE',
              /* more items */
            ],
            /* '<__string>': ... */
          },
          ChannelType: PUSH | GCM | APNS | APNS_SANDBOX | APNS_VOIP | APNS_VOIP_SANDBOX | ADM | SMS | VOICE | EMAIL | BAIDU | CUSTOM | IN_APP,
          Demographic: {
            AppVersion: 'STRING_VALUE',
            Locale: 'STRING_VALUE',
            Make: 'STRING_VALUE',
            Model: 'STRING_VALUE',
            ModelVersion: 'STRING_VALUE',
            Platform: 'STRING_VALUE',
            PlatformVersion: 'STRING_VALUE',
            Timezone: 'STRING_VALUE'
          },
          EffectiveDate: 'STRING_VALUE',
          EndpointStatus: 'STRING_VALUE',
          Location: {
            City: 'STRING_VALUE',
            Country: 'STRING_VALUE',
            Latitude: 'NUMBER_VALUE',
            Longitude: 'NUMBER_VALUE',
            PostalCode: 'STRING_VALUE',
            Region: 'STRING_VALUE'
          },
          Metrics: {
            '<__string>': 'NUMBER_VALUE',
            /* '<__string>': ... */
          },
          OptOut: 'STRING_VALUE',
          RequestId: 'STRING_VALUE',
          User: {
            UserAttributes: {
              '<__string>': [
                'STRING_VALUE',
                /* more items */
              ],
              /* '<__string>': ... */
            },
            UserId: 'STRING_VALUE'
          }
        },
        Events: { /* required */
          '<__string>': {
            EventType: 'STRING_VALUE', /* required */
            Timestamp: 'STRING_VALUE', /* required */
            AppPackageName: 'STRING_VALUE',
            AppTitle: 'STRING_VALUE',
            AppVersionCode: 'STRING_VALUE',
            Attributes: {
              '<__string>': 'STRING_VALUE',
              /* '<__string>': ... */
            },
            ClientSdkVersion: 'STRING_VALUE',
            Metrics: {
              '<__string>': 'NUMBER_VALUE',
              /* '<__string>': ... */
            },
            SdkName: 'STRING_VALUE',
            Session: {
              Id: 'STRING_VALUE', /* required */
              StartTimestamp: 'STRING_VALUE', /* required */
              Duration: 'NUMBER_VALUE',
              StopTimestamp: 'STRING_VALUE'
            }
          },
          /* '<__string>': ... */
        }
      },
      /* '<__string>': ... */
    }
  }
};
pinpoint.putEvents(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • EventsRequest — (map)

      Specifies a batch of events to process.

      • BatchItemrequired — (map<map>)

        The batch of events to process. For each item in a batch, the endpoint ID acts as a key that has an EventsBatch object as its value.

        • Endpointrequired — (map)

          A set of properties and attributes that are associated with the endpoint.

          • Address — (String)

            The unique identifier for the recipient, such as a device token, email address, or mobile phone number.

          • Attributes — (map<Array<String>>)

            One or more custom attributes that describe the endpoint by associating a name with an array of values. You can use these attributes as filter criteria when you create segments.

          • ChannelType — (String)

            The channel that's used when sending messages or push notifications to the endpoint.

            Possible values include:
            • "PUSH"
            • "GCM"
            • "APNS"
            • "APNS_SANDBOX"
            • "APNS_VOIP"
            • "APNS_VOIP_SANDBOX"
            • "ADM"
            • "SMS"
            • "VOICE"
            • "EMAIL"
            • "BAIDU"
            • "CUSTOM"
            • "IN_APP"
          • Demographic — (map)

            The demographic information for the endpoint, such as the time zone and platform.

            • AppVersion — (String)

              The version of the app that's associated with the endpoint.

            • Locale — (String)

              The locale of the endpoint, in the following format: the ISO 639-1 alpha-2 code, followed by an underscore (_), followed by an ISO 3166-1 alpha-2 value.

            • Make — (String)

              The manufacturer of the endpoint device, such as apple or samsung.

            • Model — (String)

              The model name or number of the endpoint device, such as iPhone or SM-G900F.

            • ModelVersion — (String)

              The model version of the endpoint device.

            • Platform — (String)

              The platform of the endpoint device, such as ios.

            • PlatformVersion — (String)

              The platform version of the endpoint device.

            • Timezone — (String)

              The time zone of the endpoint, specified as a tz database name value, such as America/Los_Angeles.

          • EffectiveDate — (String)

            The date and time, in ISO 8601 format, when the endpoint was last updated.

          • EndpointStatus — (String)

            Specifies whether to send messages or push notifications to the endpoint. Valid values are: ACTIVE, messages are sent to the endpoint; and, INACTIVE, messages aren’t sent to the endpoint.

            Amazon Pinpoint automatically sets this value to ACTIVE when you create an endpoint or update an existing endpoint. Amazon Pinpoint automatically sets this value to INACTIVE if you update another endpoint that has the same address specified by the Address property.

          • Location — (map)

            The geographic information for the endpoint.

            • City — (String)

              The name of the city where the endpoint is located.

            • Country — (String)

              The two-character code, in ISO 3166-1 alpha-2 format, for the country or region where the endpoint is located. For example, US for the United States.

            • Latitude — (Float)

              The latitude coordinate of the endpoint location, rounded to one decimal place.

            • Longitude — (Float)

              The longitude coordinate of the endpoint location, rounded to one decimal place.

            • PostalCode — (String)

              The postal or ZIP code for the area where the endpoint is located.

            • Region — (String)

              The name of the region where the endpoint is located. For locations in the United States, this value is the name of a state.

          • Metrics — (map<Float>)

            One or more custom metrics that your app reports to Amazon Pinpoint for the endpoint.

          • OptOut — (String)

            Specifies whether the user who's associated with the endpoint has opted out of receiving messages and push notifications from you. Possible values are: ALL, the user has opted out and doesn't want to receive any messages or push notifications; and, NONE, the user hasn't opted out and wants to receive all messages and push notifications.

          • RequestId — (String)

            A unique identifier that's generated each time the endpoint is updated.

          • User — (map)

            One or more custom user attributes that your app reports to Amazon Pinpoint for the user who's associated with the endpoint.

            • UserAttributes — (map<Array<String>>)

              One or more custom attributes that describe the user by associating a name with an array of values. For example, the value of an attribute named Interests might be: ["Science", "Music", "Travel"]. You can use these attributes as filter criteria when you create segments. Attribute names are case sensitive.

              An attribute name can contain up to 50 characters. An attribute value can contain up to 100 characters. When you define the name of a custom attribute, avoid using the following characters: number sign (#), colon (:), question mark (?), backslash (), and slash (/). The Amazon Pinpoint console can't display attribute names that contain these characters. This restriction doesn't apply to attribute values.

            • UserId — (String)

              The unique identifier for the user.

        • Eventsrequired — (map<map>)

          A set of properties that are associated with the event.

          • AppPackageName — (String)

            The package name of the app that's recording the event.

          • AppTitle — (String)

            The title of the app that's recording the event.

          • AppVersionCode — (String)

            The version number of the app that's recording the event.

          • Attributes — (map<String>)

            One or more custom attributes that are associated with the event.

          • ClientSdkVersion — (String)

            The version of the SDK that's running on the client device.

          • EventTyperequired — (String)

            The name of the event.

          • Metrics — (map<Float>)

            One or more custom metrics that are associated with the event.

          • SdkName — (String)

            The name of the SDK that's being used to record the event.

          • Session — (map)

            Information about the session in which the event occurred.

            • Duration — (Integer)

              The duration of the session, in milliseconds.

            • Idrequired — (String)

              The unique identifier for the session.

            • StartTimestamprequired — (String)

              The date and time when the session began.

            • StopTimestamp — (String)

              The date and time when the session ended.

          • Timestamprequired — (String)

            The date and time, in ISO 8601 format, when the event occurred.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • EventsResponse — (map)

        Provides information about endpoints and the events that they're associated with.

        • Results — (map<map>)

          A map that contains a multipart response for each endpoint. For each item in this object, the endpoint ID is the key and the item response is the value. If no item response exists, the value can also be one of the following: 202, the request was processed successfully; or 400, the payload wasn't valid or required fields were missing.

          • EndpointItemResponse — (map)

            The response that was received after the endpoint data was accepted.

            • Message — (String)

              The custom message that's returned in the response as a result of processing the endpoint data.

            • StatusCode — (Integer)

              The status code that's returned in the response as a result of processing the endpoint data.

          • EventsItemResponse — (map<map>)

            A multipart response object that contains a key and a value for each event in the request. In each object, the event ID is the key and an EventItemResponse object is the value.

            • Message — (String)

              A custom message that's returned in the response as a result of processing the event.

            • StatusCode — (Integer)

              The status code that's returned in the response as a result of processing the event. Possible values are: 202, for events that were accepted; and, 400, for events that weren't valid.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

putEventStream(params = {}, callback) ⇒ AWS.Request

Creates a new event stream for an application or updates the settings of an existing event stream for an application.

Service Reference:

Examples:

Calling the putEventStream operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  WriteEventStream: { /* required */
    DestinationStreamArn: 'STRING_VALUE', /* required */
    RoleArn: 'STRING_VALUE' /* required */
  }
};
pinpoint.putEventStream(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • WriteEventStream — (map)

      Specifies the Amazon Resource Name (ARN) of an event stream to publish events to and the AWS Identity and Access Management (IAM) role to use when publishing those events.

      • DestinationStreamArnrequired — (String)

        The Amazon Resource Name (ARN) of the Amazon Kinesis data stream or Amazon Kinesis Data Firehose delivery stream that you want to publish event data to.

        For a Kinesis data stream, the ARN format is: arn:aws:kinesis:region:account-id:stream/stream_name

        For a Kinesis Data Firehose delivery stream, the ARN format is: arn:aws:firehose:region:account-id:deliverystream/stream_name

      • RoleArnrequired — (String)

        The AWS Identity and Access Management (IAM) role that authorizes Amazon Pinpoint to publish event data to the stream in your AWS account.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • EventStream — (map)

        Specifies settings for publishing event data to an Amazon Kinesis data stream or an Amazon Kinesis Data Firehose delivery stream.

        • ApplicationIdrequired — (String)

          The unique identifier for the application to publish event data for.

        • DestinationStreamArnrequired — (String)

          The Amazon Resource Name (ARN) of the Amazon Kinesis data stream or Amazon Kinesis Data Firehose delivery stream to publish event data to.

          For a Kinesis data stream, the ARN format is: arn:aws:kinesis:region:account-id:stream/stream_name

          For a Kinesis Data Firehose delivery stream, the ARN format is: arn:aws:firehose:region:account-id:deliverystream/stream_name

        • ExternalId — (String)

          (Deprecated) Your AWS account ID, which you assigned to an external ID key in an IAM trust policy. Amazon Pinpoint previously used this value to assume an IAM role when publishing event data, but we removed this requirement. We don't recommend use of external IDs for IAM roles that are assumed by Amazon Pinpoint.

        • LastModifiedDate — (String)

          The date, in ISO 8601 format, when the event stream was last modified.

        • LastUpdatedBy — (String)

          The IAM user who last modified the event stream.

        • RoleArnrequired — (String)

          The AWS Identity and Access Management (IAM) role that authorizes Amazon Pinpoint to publish event data to the stream in your AWS account.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

removeAttributes(params = {}, callback) ⇒ AWS.Request

Removes one or more custom attributes, of the same attribute type, from the application. Existing endpoints still have the attributes but Amazon Pinpoint will stop capturing new or changed values for these attributes.

Service Reference:

Examples:

Calling the removeAttributes operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  AttributeType: 'STRING_VALUE', /* required */
  UpdateAttributesRequest: { /* required */
    Blacklist: [
      'STRING_VALUE',
      /* more items */
    ]
  }
};
pinpoint.removeAttributes(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • AttributeType — (String)

      The type of attribute or attributes to remove. Valid values are:

      • endpoint-custom-attributes - Custom attributes that describe endpoints, such as the date when an associated user opted in or out of receiving communications from you through a specific type of channel.

      • endpoint-metric-attributes - Custom metrics that your app reports to Amazon Pinpoint for endpoints, such as the number of app sessions or the number of items left in a cart.

      • endpoint-user-attributes - Custom attributes that describe users, such as first name, last name, and age.

    • UpdateAttributesRequest — (map)

      Specifies one or more attributes to remove from all the endpoints that are associated with an application.

      • Blacklist — (Array<String>)

        An array of the attributes to remove from all the endpoints that are associated with the application. The array can specify the complete, exact name of each attribute to remove or it can specify a glob pattern that an attribute name must match in order for the attribute to be removed.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • AttributesResource — (map)

        Provides information about the type and the names of attributes that were removed from all the endpoints that are associated with an application.

        • ApplicationIdrequired — (String)

          The unique identifier for the application.

        • AttributeTyperequired — (String)

          The type of attribute or attributes that were removed from the endpoints. Valid values are:

          • endpoint-custom-attributes - Custom attributes that describe endpoints.

          • endpoint-metric-attributes - Custom metrics that your app reports to Amazon Pinpoint for endpoints.

          • endpoint-user-attributes - Custom attributes that describe users.

        • Attributes — (Array<String>)

          An array that specifies the names of the attributes that were removed from the endpoints.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

sendMessages(params = {}, callback) ⇒ AWS.Request

Creates and sends a direct message.

Service Reference:

Examples:

Calling the sendMessages operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  MessageRequest: { /* required */
    MessageConfiguration: { /* required */
      ADMMessage: {
        Action: OPEN_APP | DEEP_LINK | URL,
        Body: 'STRING_VALUE',
        ConsolidationKey: 'STRING_VALUE',
        Data: {
          '<__string>': 'STRING_VALUE',
          /* '<__string>': ... */
        },
        ExpiresAfter: 'STRING_VALUE',
        IconReference: 'STRING_VALUE',
        ImageIconUrl: 'STRING_VALUE',
        ImageUrl: 'STRING_VALUE',
        MD5: 'STRING_VALUE',
        RawContent: 'STRING_VALUE',
        SilentPush: true || false,
        SmallImageIconUrl: 'STRING_VALUE',
        Sound: 'STRING_VALUE',
        Substitutions: {
          '<__string>': [
            'STRING_VALUE',
            /* more items */
          ],
          /* '<__string>': ... */
        },
        Title: 'STRING_VALUE',
        Url: 'STRING_VALUE'
      },
      APNSMessage: {
        APNSPushType: 'STRING_VALUE',
        Action: OPEN_APP | DEEP_LINK | URL,
        Badge: 'NUMBER_VALUE',
        Body: 'STRING_VALUE',
        Category: 'STRING_VALUE',
        CollapseId: 'STRING_VALUE',
        Data: {
          '<__string>': 'STRING_VALUE',
          /* '<__string>': ... */
        },
        MediaUrl: 'STRING_VALUE',
        PreferredAuthenticationMethod: 'STRING_VALUE',
        Priority: 'STRING_VALUE',
        RawContent: 'STRING_VALUE',
        SilentPush: true || false,
        Sound: 'STRING_VALUE',
        Substitutions: {
          '<__string>': [
            'STRING_VALUE',
            /* more items */
          ],
          /* '<__string>': ... */
        },
        ThreadId: 'STRING_VALUE',
        TimeToLive: 'NUMBER_VALUE',
        Title: 'STRING_VALUE',
        Url: 'STRING_VALUE'
      },
      BaiduMessage: {
        Action: OPEN_APP | DEEP_LINK | URL,
        Body: 'STRING_VALUE',
        Data: {
          '<__string>': 'STRING_VALUE',
          /* '<__string>': ... */
        },
        IconReference: 'STRING_VALUE',
        ImageIconUrl: 'STRING_VALUE',
        ImageUrl: 'STRING_VALUE',
        RawContent: 'STRING_VALUE',
        SilentPush: true || false,
        SmallImageIconUrl: 'STRING_VALUE',
        Sound: 'STRING_VALUE',
        Substitutions: {
          '<__string>': [
            'STRING_VALUE',
            /* more items */
          ],
          /* '<__string>': ... */
        },
        TimeToLive: 'NUMBER_VALUE',
        Title: 'STRING_VALUE',
        Url: 'STRING_VALUE'
      },
      DefaultMessage: {
        Body: 'STRING_VALUE',
        Substitutions: {
          '<__string>': [
            'STRING_VALUE',
            /* more items */
          ],
          /* '<__string>': ... */
        }
      },
      DefaultPushNotificationMessage: {
        Action: OPEN_APP | DEEP_LINK | URL,
        Body: 'STRING_VALUE',
        Data: {
          '<__string>': 'STRING_VALUE',
          /* '<__string>': ... */
        },
        SilentPush: true || false,
        Substitutions: {
          '<__string>': [
            'STRING_VALUE',
            /* more items */
          ],
          /* '<__string>': ... */
        },
        Title: 'STRING_VALUE',
        Url: 'STRING_VALUE'
      },
      EmailMessage: {
        Body: 'STRING_VALUE',
        FeedbackForwardingAddress: 'STRING_VALUE',
        FromAddress: 'STRING_VALUE',
        RawEmail: {
          Data: Buffer.from('...') || 'STRING_VALUE' /* Strings will be Base-64 encoded on your behalf */
        },
        ReplyToAddresses: [
          'STRING_VALUE',
          /* more items */
        ],
        SimpleEmail: {
          Headers: [
            {
              Name: 'STRING_VALUE',
              Value: 'STRING_VALUE'
            },
            /* more items */
          ],
          HtmlPart: {
            Charset: 'STRING_VALUE',
            Data: 'STRING_VALUE'
          },
          Subject: {
            Charset: 'STRING_VALUE',
            Data: 'STRING_VALUE'
          },
          TextPart: {
            Charset: 'STRING_VALUE',
            Data: 'STRING_VALUE'
          }
        },
        Substitutions: {
          '<__string>': [
            'STRING_VALUE',
            /* more items */
          ],
          /* '<__string>': ... */
        }
      },
      GCMMessage: {
        Action: OPEN_APP | DEEP_LINK | URL,
        Body: 'STRING_VALUE',
        CollapseKey: 'STRING_VALUE',
        Data: {
          '<__string>': 'STRING_VALUE',
          /* '<__string>': ... */
        },
        IconReference: 'STRING_VALUE',
        ImageIconUrl: 'STRING_VALUE',
        ImageUrl: 'STRING_VALUE',
        PreferredAuthenticationMethod: 'STRING_VALUE',
        Priority: 'STRING_VALUE',
        RawContent: 'STRING_VALUE',
        RestrictedPackageName: 'STRING_VALUE',
        SilentPush: true || false,
        SmallImageIconUrl: 'STRING_VALUE',
        Sound: 'STRING_VALUE',
        Substitutions: {
          '<__string>': [
            'STRING_VALUE',
            /* more items */
          ],
          /* '<__string>': ... */
        },
        TimeToLive: 'NUMBER_VALUE',
        Title: 'STRING_VALUE',
        Url: 'STRING_VALUE'
      },
      SMSMessage: {
        Body: 'STRING_VALUE',
        EntityId: 'STRING_VALUE',
        Keyword: 'STRING_VALUE',
        MediaUrl: 'STRING_VALUE',
        MessageType: TRANSACTIONAL | PROMOTIONAL,
        OriginationNumber: 'STRING_VALUE',
        SenderId: 'STRING_VALUE',
        Substitutions: {
          '<__string>': [
            'STRING_VALUE',
            /* more items */
          ],
          /* '<__string>': ... */
        },
        TemplateId: 'STRING_VALUE'
      },
      VoiceMessage: {
        Body: 'STRING_VALUE',
        LanguageCode: 'STRING_VALUE',
        OriginationNumber: 'STRING_VALUE',
        Substitutions: {
          '<__string>': [
            'STRING_VALUE',
            /* more items */
          ],
          /* '<__string>': ... */
        },
        VoiceId: 'STRING_VALUE'
      }
    },
    Addresses: {
      '<__string>': {
        BodyOverride: 'STRING_VALUE',
        ChannelType: PUSH | GCM | APNS | APNS_SANDBOX | APNS_VOIP | APNS_VOIP_SANDBOX | ADM | SMS | VOICE | EMAIL | BAIDU | CUSTOM | IN_APP,
        Context: {
          '<__string>': 'STRING_VALUE',
          /* '<__string>': ... */
        },
        RawContent: 'STRING_VALUE',
        Substitutions: {
          '<__string>': [
            'STRING_VALUE',
            /* more items */
          ],
          /* '<__string>': ... */
        },
        TitleOverride: 'STRING_VALUE'
      },
      /* '<__string>': ... */
    },
    Context: {
      '<__string>': 'STRING_VALUE',
      /* '<__string>': ... */
    },
    Endpoints: {
      '<__string>': {
        BodyOverride: 'STRING_VALUE',
        Context: {
          '<__string>': 'STRING_VALUE',
          /* '<__string>': ... */
        },
        RawContent: 'STRING_VALUE',
        Substitutions: {
          '<__string>': [
            'STRING_VALUE',
            /* more items */
          ],
          /* '<__string>': ... */
        },
        TitleOverride: 'STRING_VALUE'
      },
      /* '<__string>': ... */
    },
    TemplateConfiguration: {
      EmailTemplate: {
        Name: 'STRING_VALUE',
        Version: 'STRING_VALUE'
      },
      InAppTemplate: {
        Name: 'STRING_VALUE',
        Version: 'STRING_VALUE'
      },
      PushTemplate: {
        Name: 'STRING_VALUE',
        Version: 'STRING_VALUE'
      },
      SMSTemplate: {
        Name: 'STRING_VALUE',
        Version: 'STRING_VALUE'
      },
      VoiceTemplate: {
        Name: 'STRING_VALUE',
        Version: 'STRING_VALUE'
      }
    },
    TraceId: 'STRING_VALUE'
  }
};
pinpoint.sendMessages(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • MessageRequest — (map)

      Specifies the configuration and other settings for a message.

      • Addresses — (map<map>)

        A map of key-value pairs, where each key is an address and each value is an AddressConfiguration object. An address can be a push notification token, a phone number, or an email address. You can use an AddressConfiguration object to tailor the message for an address by specifying settings such as content overrides and message variables.

        • BodyOverride — (String)

          The message body to use instead of the default message body. This value overrides the default message body.

        • ChannelType — (String)

          The channel to use when sending the message.

          Possible values include:
          • "PUSH"
          • "GCM"
          • "APNS"
          • "APNS_SANDBOX"
          • "APNS_VOIP"
          • "APNS_VOIP_SANDBOX"
          • "ADM"
          • "SMS"
          • "VOICE"
          • "EMAIL"
          • "BAIDU"
          • "CUSTOM"
          • "IN_APP"
        • Context — (map<String>)

          An object that maps custom attributes to attributes for the address and is attached to the message. Attribute names are case sensitive.

          For a push notification, this payload is added to the data.pinpoint object. For an email or text message, this payload is added to email/SMS delivery receipt event attributes.

        • RawContent — (String)

          The raw, JSON-formatted string to use as the payload for the message. If specified, this value overrides all other values for the message.

        • Substitutions — (map<Array<String>>)

          A map of the message variables to merge with the variables specified by properties of the DefaultMessage object. The variables specified in this map take precedence over all other variables.

        • TitleOverride — (String)

          The message title to use instead of the default message title. This value overrides the default message title.

      • Context — (map<String>)

        A map of custom attributes to attach to the message. For a push notification, this payload is added to the data.pinpoint object. For an email or text message, this payload is added to email/SMS delivery receipt event attributes.

      • Endpoints — (map<map>)

        A map of key-value pairs, where each key is an endpoint ID and each value is an EndpointSendConfiguration object. You can use an EndpointSendConfiguration object to tailor the message for an endpoint by specifying settings such as content overrides and message variables.

        • BodyOverride — (String)

          The body of the message. If specified, this value overrides the default message body.

        • Context — (map<String>)

          A map of custom attributes to attach to the message for the address. Attribute names are case sensitive.

          For a push notification, this payload is added to the data.pinpoint object. For an email or text message, this payload is added to email/SMS delivery receipt event attributes.

        • RawContent — (String)

          The raw, JSON-formatted string to use as the payload for the message. If specified, this value overrides all other values for the message.

        • Substitutions — (map<Array<String>>)

          A map of the message variables to merge with the variables specified for the default message (DefaultMessage.Substitutions). The variables specified in this map take precedence over all other variables.

        • TitleOverride — (String)

          The title or subject line of the message. If specified, this value overrides the default message title or subject line.

      • MessageConfigurationrequired — (map)

        The settings and content for the default message and any default messages that you defined for specific channels.

        • ADMMessage — (map)

          The default push notification message for the ADM (Amazon Device Messaging) channel. This message overrides the default push notification message (DefaultPushNotificationMessage).

          • Action — (String)

            The action to occur if the recipient taps the push notification. Valid values are:

            • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

            • DEEP_LINK - Your app opens and displays a designated user interface in the app. This action uses the deep-linking features of the Android platform.

            • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

            Possible values include:
            • "OPEN_APP"
            • "DEEP_LINK"
            • "URL"
          • Body — (String)

            The body of the notification message.

          • ConsolidationKey — (String)

            An arbitrary string that indicates that multiple messages are logically the same and that Amazon Device Messaging (ADM) can drop previously enqueued messages in favor of this message.

          • Data — (map<String>)

            The JSON data payload to use for the push notification, if the notification is a silent push notification. This payload is added to the data.pinpoint.jsonBody object of the notification.

          • ExpiresAfter — (String)

            The amount of time, in seconds, that ADM should store the message if the recipient's device is offline. Amazon Pinpoint specifies this value in the expiresAfter parameter when it sends the notification message to ADM.

          • IconReference — (String)

            The icon image name of the asset saved in your app.

          • ImageIconUrl — (String)

            The URL of the large icon image to display in the content view of the push notification.

          • ImageUrl — (String)

            The URL of an image to display in the push notification.

          • MD5 — (String)

            The base64-encoded, MD5 checksum of the value specified by the Data property. ADM uses the MD5 value to verify the integrity of the data.

          • RawContent — (String)

            The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

          • SilentPush — (Boolean)

            Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration or supporting phone home functionality.

          • SmallImageIconUrl — (String)

            The URL of the small icon image to display in the status bar and the content view of the push notification.

          • Sound — (String)

            The sound to play when the recipient receives the push notification. You can use the default stream or specify the file name of a sound resource that's bundled in your app. On an Android platform, the sound file must reside in /res/raw/.

          • Substitutions — (map<Array<String>>)

            The default message variables to use in the notification message. You can override the default variables with individual address variables.

          • Title — (String)

            The title to display above the notification message on the recipient's device.

          • Url — (String)

            The URL to open in the recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

        • APNSMessage — (map)

          The default push notification message for the APNs (Apple Push Notification service) channel. This message overrides the default push notification message (DefaultPushNotificationMessage).

          • APNSPushType — (String)

            The type of push notification to send. Valid values are:

            • alert - For a standard notification that's displayed on recipients' devices and prompts a recipient to interact with the notification.

            • background - For a silent notification that delivers content in the background and isn't displayed on recipients' devices.

            • complication - For a notification that contains update information for an app’s complication timeline.

            • fileprovider - For a notification that signals changes to a File Provider extension.

            • mdm - For a notification that tells managed devices to contact the MDM server.

            • voip - For a notification that provides information about an incoming VoIP call.

            Amazon Pinpoint specifies this value in the apns-push-type request header when it sends the notification message to APNs. If you don't specify a value for this property, Amazon Pinpoint sets the value to alert or background automatically, based on the value that you specify for the SilentPush or RawContent property of the message.

            For more information about the apns-push-type request header, see Sending Notification Requests to APNs on the Apple Developer website.

          • Action — (String)

            The action to occur if the recipient taps the push notification. Valid values are:

            • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

            • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of the iOS platform.

            • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

            Possible values include:
            • "OPEN_APP"
            • "DEEP_LINK"
            • "URL"
          • Badge — (Integer)

            The key that indicates whether and how to modify the badge of your app's icon when the recipient receives the push notification. If this key isn't included in the dictionary, the badge doesn't change. To remove the badge, set this value to 0.

          • Body — (String)

            The body of the notification message.

          • Category — (String)

            The key that indicates the notification type for the push notification. This key is a value that's defined by the identifier property of one of your app's registered categories.

          • CollapseId — (String)

            An arbitrary identifier that, if assigned to multiple messages, APNs uses to coalesce the messages into a single push notification instead of delivering each message individually. This value can't exceed 64 bytes.

            Amazon Pinpoint specifies this value in the apns-collapse-id request header when it sends the notification message to APNs.

          • Data — (map<String>)

            The JSON payload to use for a silent push notification. This payload is added to the data.pinpoint.jsonBody object of the notification.

          • MediaUrl — (String)

            The URL of an image or video to display in the push notification.

          • PreferredAuthenticationMethod — (String)

            The authentication method that you want Amazon Pinpoint to use when authenticating with APNs, CERTIFICATE or TOKEN.

          • Priority — (String)

            para>5 - Low priority, the notification might be delayed, delivered as part of a group, or throttled.

            /listitem>
          • 10 - High priority, the notification is sent immediately. This is the default value. A high priority notification should trigger an alert, play a sound, or badge your app's icon on the recipient's device.

          • /para>

            Amazon Pinpoint specifies this value in the apns-priority request header when it sends the notification message to APNs.

            The equivalent values for Firebase Cloud Messaging (FCM), formerly Google Cloud Messaging (GCM), are normal, for 5, and high, for 10. If you specify an FCM value for this property, Amazon Pinpoint accepts and converts the value to the corresponding APNs value.

          • RawContent — (String)

            The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

            Note: If you specify the raw content of an APNs push notification, the message payload has to include the content-available key. The value of the content-available key has to be an integer, and can only be 0 or 1. If you're sending a standard notification, set the value of content-available to 0. If you're sending a silent (background) notification, set the value of content-available to 1. Additionally, silent notification payloads can't include the alert, badge, or sound keys. For more information, see Generating a Remote Notification and Pushing Background Updates to Your App on the Apple Developer website.
          • SilentPush — (Boolean)

            Specifies whether the notification is a silent push notification. A silent (or background) push notification isn't displayed on recipients' devices. You can use silent push notifications to make small updates to your app, or to display messages in an in-app message center.

            Amazon Pinpoint uses this property to determine the correct value for the apns-push-type request header when it sends the notification message to APNs. If you specify a value of true for this property, Amazon Pinpoint sets the value for the apns-push-type header field to background.

            Note: If you specify the raw content of an APNs push notification, the message payload has to include the content-available key. For silent (background) notifications, set the value of content-available to 1. Additionally, the message payload for a silent notification can't include the alert, badge, or sound keys. For more information, see Generating a Remote Notification and Pushing Background Updates to Your App on the Apple Developer website. Apple has indicated that they will throttle "excessive" background notifications based on current traffic volumes. To prevent your notifications being throttled, Apple recommends that you send no more than 3 silent push notifications to each recipient per hour.
          • Sound — (String)

            The key for the sound to play when the recipient receives the push notification. The value for this key is the name of a sound file in your app's main bundle or the Library/Sounds folder in your app's data container. If the sound file can't be found or you specify default for the value, the system plays the default alert sound.

          • Substitutions — (map<Array<String>>)

            The default message variables to use in the notification message. You can override these default variables with individual address variables.

          • ThreadId — (String)

            The key that represents your app-specific identifier for grouping notifications. If you provide a Notification Content app extension, you can use this value to group your notifications together.

          • TimeToLive — (Integer)

            The amount of time, in seconds, that APNs should store and attempt to deliver the push notification, if the service is unable to deliver the notification the first time. If this value is 0, APNs treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

            Amazon Pinpoint specifies this value in the apns-expiration request header when it sends the notification message to APNs.

          • Title — (String)

            The title to display above the notification message on the recipient's device.

          • Url — (String)

            The URL to open in the recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

        • BaiduMessage — (map)

          The default push notification message for the Baidu (Baidu Cloud Push) channel. This message overrides the default push notification message (DefaultPushNotificationMessage).

          • Action — (String)

            The action to occur if the recipient taps the push notification. Valid values are:

            • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

            • DEEP_LINK - Your app opens and displays a designated user interface in the app. This action uses the deep-linking features of the Android platform.

            • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

            Possible values include:
            • "OPEN_APP"
            • "DEEP_LINK"
            • "URL"
          • Body — (String)

            The body of the notification message.

          • Data — (map<String>)

            The JSON data payload to use for the push notification, if the notification is a silent push notification. This payload is added to the data.pinpoint.jsonBody object of the notification.

          • IconReference — (String)

            The icon image name of the asset saved in your app.

          • ImageIconUrl — (String)

            The URL of the large icon image to display in the content view of the push notification.

          • ImageUrl — (String)

            The URL of an image to display in the push notification.

          • RawContent — (String)

            The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

          • SilentPush — (Boolean)

            Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration or supporting phone home functionality.

          • SmallImageIconUrl — (String)

            The URL of the small icon image to display in the status bar and the content view of the push notification.

          • Sound — (String)

            The sound to play when the recipient receives the push notification. You can use the default stream or specify the file name of a sound resource that's bundled in your app. On an Android platform, the sound file must reside in /res/raw/.

          • Substitutions — (map<Array<String>>)

            The default message variables to use in the notification message. You can override the default variables with individual address variables.

          • TimeToLive — (Integer)

            The amount of time, in seconds, that the Baidu Cloud Push service should store the message if the recipient's device is offline. The default value and maximum supported time is 604,800 seconds (7 days).

          • Title — (String)

            The title to display above the notification message on the recipient's device.

          • Url — (String)

            The URL to open in the recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

        • DefaultMessage — (map)

          The default message for all channels.

          • Body — (String)

            The default body of the message.

          • Substitutions — (map<Array<String>>)

            The default message variables to use in the message. You can override these default variables with individual address variables.

        • DefaultPushNotificationMessage — (map)

          The default push notification message for all push notification channels.

          • Action — (String)

            The default action to occur if a recipient taps the push notification. Valid values are:

            • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

            • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of the iOS and Android platforms.

            • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

            Possible values include:
            • "OPEN_APP"
            • "DEEP_LINK"
            • "URL"
          • Body — (String)

            The default body of the notification message.

          • Data — (map<String>)

            The JSON data payload to use for the default push notification, if the notification is a silent push notification. This payload is added to the data.pinpoint.jsonBody object of the notification.

          • SilentPush — (Boolean)

            Specifies whether the default notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration or delivering messages to an in-app notification center.

          • Substitutions — (map<Array<String>>)

            The default message variables to use in the notification message. You can override the default variables with individual address variables.

          • Title — (String)

            The default title to display above the notification message on a recipient's device.

          • Url — (String)

            The default URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

        • EmailMessage — (map)

          The default message for the email channel. This message overrides the default message (DefaultMessage).

          • Body — (String)

            The body of the email message.

          • FeedbackForwardingAddress — (String)

            The email address to forward bounces and complaints to, if feedback forwarding is enabled.

          • FromAddress — (String)

            The verified email address to send the email message from. The default value is the FromAddress specified for the email channel.

          • RawEmail — (map)

            The email message, represented as a raw MIME message.

            • Data — (Buffer, Typed Array, Blob, String)

              The email message, represented as a raw MIME message. The entire message must be base64 encoded.

          • ReplyToAddresses — (Array<String>)

            The reply-to email address(es) for the email message. If a recipient replies to the email, each reply-to address receives the reply.

          • SimpleEmail — (map)

            The email message, composed of a subject, a text part, and an HTML part.

            • HtmlPart — (map)

              The body of the email message, in HTML format. We recommend using HTML format for email clients that render HTML content. You can include links, formatted text, and more in an HTML message.

              • Charset — (String)

                The applicable character set for the message content.

              • Data — (String)

                The textual data of the message content.

            • Subject — (map)

              The subject line, or title, of the email.

              • Charset — (String)

                The applicable character set for the message content.

              • Data — (String)

                The textual data of the message content.

            • TextPart — (map)

              The body of the email message, in plain text format. We recommend using plain text format for email clients that don't render HTML content and clients that are connected to high-latency networks, such as mobile devices.

              • Charset — (String)

                The applicable character set for the message content.

              • Data — (String)

                The textual data of the message content.

            • Headers — (Array<map>)

              The list of MessageHeaders for the email. You can have up to 15 Headers.

              • Name — (String)

                The name of the message header. The header name can contain up to 126 characters.

              • Value — (String)

                The value of the message header. The header value can contain up to 870 characters, including the length of any rendered attributes. For example if you add the {CreationDate} attribute, it renders as YYYY-MM-DDTHH:MM:SS.SSSZ and is 24 characters in length.

          • Substitutions — (map<Array<String>>)

            The default message variables to use in the email message. You can override the default variables with individual address variables.

        • GCMMessage — (map)

          The default push notification message for the GCM channel, which is used to send notifications through the Firebase Cloud Messaging (FCM), formerly Google Cloud Messaging (GCM), service. This message overrides the default push notification message (DefaultPushNotificationMessage).

          • Action — (String)

            The action to occur if the recipient taps the push notification. Valid values are:

            • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

            • DEEP_LINK - Your app opens and displays a designated user interface in the app. This action uses the deep-linking features of the Android platform.

            • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

            Possible values include:
            • "OPEN_APP"
            • "DEEP_LINK"
            • "URL"
          • Body — (String)

            The body of the notification message.

          • CollapseKey — (String)

            An arbitrary string that identifies a group of messages that can be collapsed to ensure that only the last message is sent when delivery can resume. This helps avoid sending too many instances of the same messages when the recipient's device comes online again or becomes active.

            Amazon Pinpoint specifies this value in the Firebase Cloud Messaging (FCM) collapse_key parameter when it sends the notification message to FCM.

          • Data — (map<String>)

            The JSON data payload to use for the push notification, if the notification is a silent push notification. This payload is added to the data.pinpoint.jsonBody object of the notification.

          • IconReference — (String)

            The icon image name of the asset saved in your app.

          • ImageIconUrl — (String)

            The URL of the large icon image to display in the content view of the push notification.

          • ImageUrl — (String)

            The URL of an image to display in the push notification.

          • PreferredAuthenticationMethod — (String)

            The preferred authentication method, with valid values "KEY" or "TOKEN". If a value isn't provided then the DefaultAuthenticationMethod is used.

          • Priority — (String)

            para>normal – The notification might be delayed. Delivery is optimized for battery usage on the recipient's device. Use this value unless immediate delivery is required.

            /listitem>
          • high – The notification is sent immediately and might wake a sleeping device.

          • /para>

            Amazon Pinpoint specifies this value in the FCM priority parameter when it sends the notification message to FCM.

            The equivalent values for Apple Push Notification service (APNs) are 5, for normal, and 10, for high. If you specify an APNs value for this property, Amazon Pinpoint accepts and converts the value to the corresponding FCM value.

          • RawContent — (String)

            The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

          • RestrictedPackageName — (String)

            The package name of the application where registration tokens must match in order for the recipient to receive the message.

          • SilentPush — (Boolean)

            Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration or supporting phone home functionality.

          • SmallImageIconUrl — (String)

            The URL of the small icon image to display in the status bar and the content view of the push notification.

          • Sound — (String)

            The sound to play when the recipient receives the push notification. You can use the default stream or specify the file name of a sound resource that's bundled in your app. On an Android platform, the sound file must reside in /res/raw/.

          • Substitutions — (map<Array<String>>)

            The default message variables to use in the notification message. You can override the default variables with individual address variables.

          • TimeToLive — (Integer)

            The amount of time, in seconds, that FCM should store and attempt to deliver the push notification, if the service is unable to deliver the notification the first time. If you don't specify this value, FCM defaults to the maximum value, which is 2,419,200 seconds (28 days).

            Amazon Pinpoint specifies this value in the FCM time_to_live parameter when it sends the notification message to FCM.

          • Title — (String)

            The title to display above the notification message on the recipient's device.

          • Url — (String)

            The URL to open in the recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

        • SMSMessage — (map)

          The default message for the SMS channel. This message overrides the default message (DefaultMessage).

          • Body — (String)

            The body of the SMS message.

          • Keyword — (String)

            The SMS program name that you provided to AWS Support when you requested your dedicated number.

          • MediaUrl — (String)

            This field is reserved for future use.

          • MessageType — (String)

            The SMS message type. Valid values are TRANSACTIONAL (for messages that are critical or time-sensitive, such as a one-time passwords) and PROMOTIONAL (for messsages that aren't critical or time-sensitive, such as marketing messages).

            Possible values include:
            • "TRANSACTIONAL"
            • "PROMOTIONAL"
          • OriginationNumber — (String)

            The number to send the SMS message from. This value should be one of the dedicated long or short codes that's assigned to your AWS account. If you don't specify a long or short code, Amazon Pinpoint assigns a random long code to the SMS message and sends the message from that code.

          • SenderId — (String)

            The sender ID to display as the sender of the message on a recipient's device. Support for sender IDs varies by country or region.

          • Substitutions — (map<Array<String>>)

            The message variables to use in the SMS message. You can override the default variables with individual address variables.

          • EntityId — (String)

            The entity ID or Principal Entity (PE) id received from the regulatory body for sending SMS in your country.

          • TemplateId — (String)

            The template ID received from the regulatory body for sending SMS in your country.

        • VoiceMessage — (map)

          The default message for the voice channel. This message overrides the default message (DefaultMessage).

          • Body — (String)

            The text of the script to use for the voice message.

          • LanguageCode — (String)

            The code for the language to use when synthesizing the text of the message script. For a list of supported languages and the code for each one, see the Amazon Polly Developer Guide.

          • OriginationNumber — (String)

            The long code to send the voice message from. This value should be one of the dedicated long codes that's assigned to your AWS account. Although it isn't required, we recommend that you specify the long code in E.164 format, for example +12065550100, to ensure prompt and accurate delivery of the message.

          • Substitutions — (map<Array<String>>)

            The default message variables to use in the voice message. You can override the default variables with individual address variables.

          • VoiceId — (String)

            The name of the voice to use when delivering the message. For a list of supported voices, see the Amazon Polly Developer Guide.

      • TemplateConfiguration — (map)

        The message template to use for the message.

        • EmailTemplate — (map)

          The email template to use for the message.

          • Name — (String)

            The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

          • Version — (String)

            The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

            If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

        • PushTemplate — (map)

          The push notification template to use for the message.

          • Name — (String)

            The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

          • Version — (String)

            The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

            If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

        • SMSTemplate — (map)

          The SMS template to use for the message.

          • Name — (String)

            The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

          • Version — (String)

            The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

            If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

        • VoiceTemplate — (map)

          The voice template to use for the message. This object isn't supported for campaigns.

          • Name — (String)

            The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

          • Version — (String)

            The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

            If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

        • InAppTemplate — (map)

          The InApp template to use for the message. The InApp template object is not supported for SendMessages.

          • Name — (String)

            The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

          • Version — (String)

            The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

            If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

      • TraceId — (String)

        The unique identifier for tracing the message. This identifier is visible to message recipients.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • MessageResponse — (map)

        Provides information about the results of a request to send a message to an endpoint address.

        • ApplicationIdrequired — (String)

          The unique identifier for the application that was used to send the message.

        • EndpointResult — (map<map>)

          A map that contains a multipart response for each address that the message was sent to. In the map, the endpoint ID is the key and the result is the value.

          • Address — (String)

            The endpoint address that the message was delivered to.

          • DeliveryStatusrequired — (String)

            The delivery status of the message. Possible values are:

            • DUPLICATE - The endpoint address is a duplicate of another endpoint address. Amazon Pinpoint won't attempt to send the message again.

            • OPT_OUT - The user who's associated with the endpoint has opted out of receiving messages from you. Amazon Pinpoint won't attempt to send the message again.

            • PERMANENT_FAILURE - An error occurred when delivering the message to the endpoint. Amazon Pinpoint won't attempt to send the message again.

            • SUCCESSFUL - The message was successfully delivered to the endpoint.

            • TEMPORARY_FAILURE - A temporary error occurred. Amazon Pinpoint won't attempt to send the message again.

            • THROTTLED - Amazon Pinpoint throttled the operation to send the message to the endpoint.

            • UNKNOWN_FAILURE - An unknown error occurred.

            Possible values include:
            • "SUCCESSFUL"
            • "THROTTLED"
            • "TEMPORARY_FAILURE"
            • "PERMANENT_FAILURE"
            • "UNKNOWN_FAILURE"
            • "OPT_OUT"
            • "DUPLICATE"
          • MessageId — (String)

            The unique identifier for the message that was sent.

          • StatusCoderequired — (Integer)

            The downstream service status code for delivering the message.

          • StatusMessage — (String)

            The status message for delivering the message.

          • UpdatedToken — (String)

            For push notifications that are sent through the GCM channel, specifies whether the endpoint's device registration token was updated as part of delivering the message.

        • RequestId — (String)

          The identifier for the original request that the message was delivered for.

        • Result — (map<map>)

          A map that contains a multipart response for each address (email address, phone number, or push notification token) that the message was sent to. In the map, the address is the key and the result is the value.

          • DeliveryStatusrequired — (String)

            The delivery status of the message. Possible values are:

            • DUPLICATE - The endpoint address is a duplicate of another endpoint address. Amazon Pinpoint won't attempt to send the message again.

            • OPT_OUT - The user who's associated with the endpoint address has opted out of receiving messages from you. Amazon Pinpoint won't attempt to send the message again.

            • PERMANENT_FAILURE - An error occurred when delivering the message to the endpoint address. Amazon Pinpoint won't attempt to send the message again.

            • SUCCESSFUL - The message was successfully delivered to the endpoint address.

            • TEMPORARY_FAILURE - A temporary error occurred. Amazon Pinpoint won't attempt to send the message again.

            • THROTTLED - Amazon Pinpoint throttled the operation to send the message to the endpoint address.

            • UNKNOWN_FAILURE - An unknown error occurred.

            Possible values include:
            • "SUCCESSFUL"
            • "THROTTLED"
            • "TEMPORARY_FAILURE"
            • "PERMANENT_FAILURE"
            • "UNKNOWN_FAILURE"
            • "OPT_OUT"
            • "DUPLICATE"
          • MessageId — (String)

            The unique identifier for the message that was sent.

          • StatusCoderequired — (Integer)

            The downstream service status code for delivering the message.

          • StatusMessage — (String)

            The status message for delivering the message.

          • UpdatedToken — (String)

            For push notifications that are sent through the GCM channel, specifies whether the endpoint's device registration token was updated as part of delivering the message.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

sendOTPMessage(params = {}, callback) ⇒ AWS.Request

Send an OTP message

Service Reference:

Examples:

Calling the sendOTPMessage operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  SendOTPMessageRequestParameters: { /* required */
    BrandName: 'STRING_VALUE', /* required */
    Channel: 'STRING_VALUE', /* required */
    DestinationIdentity: 'STRING_VALUE', /* required */
    OriginationIdentity: 'STRING_VALUE', /* required */
    ReferenceId: 'STRING_VALUE', /* required */
    AllowedAttempts: 'NUMBER_VALUE',
    CodeLength: 'NUMBER_VALUE',
    EntityId: 'STRING_VALUE',
    Language: 'STRING_VALUE',
    TemplateId: 'STRING_VALUE',
    ValidityPeriod: 'NUMBER_VALUE'
  }
};
pinpoint.sendOTPMessage(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique ID of your Amazon Pinpoint application.

    • SendOTPMessageRequestParameters — (map)

      Send OTP message request parameters.

      • AllowedAttempts — (Integer)

        The attempts allowed to validate an OTP.

      • BrandNamerequired — (String)

        The brand name that will be substituted into the OTP message body. Should be owned by calling AWS account.

      • Channelrequired — (String)

        Channel type for the OTP message. Supported values: [SMS].

      • CodeLength — (Integer)

        The number of characters in the generated OTP.

      • DestinationIdentityrequired — (String)

        The destination identity to send OTP to.

      • EntityId — (String)

        A unique Entity ID received from DLT after entity registration is approved.

      • Language — (String)

        The language to be used for the outgoing message body containing the OTP.

      • OriginationIdentityrequired — (String)

        The origination identity used to send OTP from.

      • ReferenceIdrequired — (String)

        Developer-specified reference identifier. Required to match during OTP verification.

      • TemplateId — (String)

        A unique Template ID received from DLT after entity registration is approved.

      • ValidityPeriod — (Integer)

        The time in minutes before the OTP is no longer valid.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • MessageResponse — (map)

        Provides information about the results of a request to send a message to an endpoint address.

        • ApplicationIdrequired — (String)

          The unique identifier for the application that was used to send the message.

        • EndpointResult — (map<map>)

          A map that contains a multipart response for each address that the message was sent to. In the map, the endpoint ID is the key and the result is the value.

          • Address — (String)

            The endpoint address that the message was delivered to.

          • DeliveryStatusrequired — (String)

            The delivery status of the message. Possible values are:

            • DUPLICATE - The endpoint address is a duplicate of another endpoint address. Amazon Pinpoint won't attempt to send the message again.

            • OPT_OUT - The user who's associated with the endpoint has opted out of receiving messages from you. Amazon Pinpoint won't attempt to send the message again.

            • PERMANENT_FAILURE - An error occurred when delivering the message to the endpoint. Amazon Pinpoint won't attempt to send the message again.

            • SUCCESSFUL - The message was successfully delivered to the endpoint.

            • TEMPORARY_FAILURE - A temporary error occurred. Amazon Pinpoint won't attempt to send the message again.

            • THROTTLED - Amazon Pinpoint throttled the operation to send the message to the endpoint.

            • UNKNOWN_FAILURE - An unknown error occurred.

            Possible values include:
            • "SUCCESSFUL"
            • "THROTTLED"
            • "TEMPORARY_FAILURE"
            • "PERMANENT_FAILURE"
            • "UNKNOWN_FAILURE"
            • "OPT_OUT"
            • "DUPLICATE"
          • MessageId — (String)

            The unique identifier for the message that was sent.

          • StatusCoderequired — (Integer)

            The downstream service status code for delivering the message.

          • StatusMessage — (String)

            The status message for delivering the message.

          • UpdatedToken — (String)

            For push notifications that are sent through the GCM channel, specifies whether the endpoint's device registration token was updated as part of delivering the message.

        • RequestId — (String)

          The identifier for the original request that the message was delivered for.

        • Result — (map<map>)

          A map that contains a multipart response for each address (email address, phone number, or push notification token) that the message was sent to. In the map, the address is the key and the result is the value.

          • DeliveryStatusrequired — (String)

            The delivery status of the message. Possible values are:

            • DUPLICATE - The endpoint address is a duplicate of another endpoint address. Amazon Pinpoint won't attempt to send the message again.

            • OPT_OUT - The user who's associated with the endpoint address has opted out of receiving messages from you. Amazon Pinpoint won't attempt to send the message again.

            • PERMANENT_FAILURE - An error occurred when delivering the message to the endpoint address. Amazon Pinpoint won't attempt to send the message again.

            • SUCCESSFUL - The message was successfully delivered to the endpoint address.

            • TEMPORARY_FAILURE - A temporary error occurred. Amazon Pinpoint won't attempt to send the message again.

            • THROTTLED - Amazon Pinpoint throttled the operation to send the message to the endpoint address.

            • UNKNOWN_FAILURE - An unknown error occurred.

            Possible values include:
            • "SUCCESSFUL"
            • "THROTTLED"
            • "TEMPORARY_FAILURE"
            • "PERMANENT_FAILURE"
            • "UNKNOWN_FAILURE"
            • "OPT_OUT"
            • "DUPLICATE"
          • MessageId — (String)

            The unique identifier for the message that was sent.

          • StatusCoderequired — (Integer)

            The downstream service status code for delivering the message.

          • StatusMessage — (String)

            The status message for delivering the message.

          • UpdatedToken — (String)

            For push notifications that are sent through the GCM channel, specifies whether the endpoint's device registration token was updated as part of delivering the message.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

sendUsersMessages(params = {}, callback) ⇒ AWS.Request

Creates and sends a message to a list of users.

Service Reference:

Examples:

Calling the sendUsersMessages operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  SendUsersMessageRequest: { /* required */
    MessageConfiguration: { /* required */
      ADMMessage: {
        Action: OPEN_APP | DEEP_LINK | URL,
        Body: 'STRING_VALUE',
        ConsolidationKey: 'STRING_VALUE',
        Data: {
          '<__string>': 'STRING_VALUE',
          /* '<__string>': ... */
        },
        ExpiresAfter: 'STRING_VALUE',
        IconReference: 'STRING_VALUE',
        ImageIconUrl: 'STRING_VALUE',
        ImageUrl: 'STRING_VALUE',
        MD5: 'STRING_VALUE',
        RawContent: 'STRING_VALUE',
        SilentPush: true || false,
        SmallImageIconUrl: 'STRING_VALUE',
        Sound: 'STRING_VALUE',
        Substitutions: {
          '<__string>': [
            'STRING_VALUE',
            /* more items */
          ],
          /* '<__string>': ... */
        },
        Title: 'STRING_VALUE',
        Url: 'STRING_VALUE'
      },
      APNSMessage: {
        APNSPushType: 'STRING_VALUE',
        Action: OPEN_APP | DEEP_LINK | URL,
        Badge: 'NUMBER_VALUE',
        Body: 'STRING_VALUE',
        Category: 'STRING_VALUE',
        CollapseId: 'STRING_VALUE',
        Data: {
          '<__string>': 'STRING_VALUE',
          /* '<__string>': ... */
        },
        MediaUrl: 'STRING_VALUE',
        PreferredAuthenticationMethod: 'STRING_VALUE',
        Priority: 'STRING_VALUE',
        RawContent: 'STRING_VALUE',
        SilentPush: true || false,
        Sound: 'STRING_VALUE',
        Substitutions: {
          '<__string>': [
            'STRING_VALUE',
            /* more items */
          ],
          /* '<__string>': ... */
        },
        ThreadId: 'STRING_VALUE',
        TimeToLive: 'NUMBER_VALUE',
        Title: 'STRING_VALUE',
        Url: 'STRING_VALUE'
      },
      BaiduMessage: {
        Action: OPEN_APP | DEEP_LINK | URL,
        Body: 'STRING_VALUE',
        Data: {
          '<__string>': 'STRING_VALUE',
          /* '<__string>': ... */
        },
        IconReference: 'STRING_VALUE',
        ImageIconUrl: 'STRING_VALUE',
        ImageUrl: 'STRING_VALUE',
        RawContent: 'STRING_VALUE',
        SilentPush: true || false,
        SmallImageIconUrl: 'STRING_VALUE',
        Sound: 'STRING_VALUE',
        Substitutions: {
          '<__string>': [
            'STRING_VALUE',
            /* more items */
          ],
          /* '<__string>': ... */
        },
        TimeToLive: 'NUMBER_VALUE',
        Title: 'STRING_VALUE',
        Url: 'STRING_VALUE'
      },
      DefaultMessage: {
        Body: 'STRING_VALUE',
        Substitutions: {
          '<__string>': [
            'STRING_VALUE',
            /* more items */
          ],
          /* '<__string>': ... */
        }
      },
      DefaultPushNotificationMessage: {
        Action: OPEN_APP | DEEP_LINK | URL,
        Body: 'STRING_VALUE',
        Data: {
          '<__string>': 'STRING_VALUE',
          /* '<__string>': ... */
        },
        SilentPush: true || false,
        Substitutions: {
          '<__string>': [
            'STRING_VALUE',
            /* more items */
          ],
          /* '<__string>': ... */
        },
        Title: 'STRING_VALUE',
        Url: 'STRING_VALUE'
      },
      EmailMessage: {
        Body: 'STRING_VALUE',
        FeedbackForwardingAddress: 'STRING_VALUE',
        FromAddress: 'STRING_VALUE',
        RawEmail: {
          Data: Buffer.from('...') || 'STRING_VALUE' /* Strings will be Base-64 encoded on your behalf */
        },
        ReplyToAddresses: [
          'STRING_VALUE',
          /* more items */
        ],
        SimpleEmail: {
          Headers: [
            {
              Name: 'STRING_VALUE',
              Value: 'STRING_VALUE'
            },
            /* more items */
          ],
          HtmlPart: {
            Charset: 'STRING_VALUE',
            Data: 'STRING_VALUE'
          },
          Subject: {
            Charset: 'STRING_VALUE',
            Data: 'STRING_VALUE'
          },
          TextPart: {
            Charset: 'STRING_VALUE',
            Data: 'STRING_VALUE'
          }
        },
        Substitutions: {
          '<__string>': [
            'STRING_VALUE',
            /* more items */
          ],
          /* '<__string>': ... */
        }
      },
      GCMMessage: {
        Action: OPEN_APP | DEEP_LINK | URL,
        Body: 'STRING_VALUE',
        CollapseKey: 'STRING_VALUE',
        Data: {
          '<__string>': 'STRING_VALUE',
          /* '<__string>': ... */
        },
        IconReference: 'STRING_VALUE',
        ImageIconUrl: 'STRING_VALUE',
        ImageUrl: 'STRING_VALUE',
        PreferredAuthenticationMethod: 'STRING_VALUE',
        Priority: 'STRING_VALUE',
        RawContent: 'STRING_VALUE',
        RestrictedPackageName: 'STRING_VALUE',
        SilentPush: true || false,
        SmallImageIconUrl: 'STRING_VALUE',
        Sound: 'STRING_VALUE',
        Substitutions: {
          '<__string>': [
            'STRING_VALUE',
            /* more items */
          ],
          /* '<__string>': ... */
        },
        TimeToLive: 'NUMBER_VALUE',
        Title: 'STRING_VALUE',
        Url: 'STRING_VALUE'
      },
      SMSMessage: {
        Body: 'STRING_VALUE',
        EntityId: 'STRING_VALUE',
        Keyword: 'STRING_VALUE',
        MediaUrl: 'STRING_VALUE',
        MessageType: TRANSACTIONAL | PROMOTIONAL,
        OriginationNumber: 'STRING_VALUE',
        SenderId: 'STRING_VALUE',
        Substitutions: {
          '<__string>': [
            'STRING_VALUE',
            /* more items */
          ],
          /* '<__string>': ... */
        },
        TemplateId: 'STRING_VALUE'
      },
      VoiceMessage: {
        Body: 'STRING_VALUE',
        LanguageCode: 'STRING_VALUE',
        OriginationNumber: 'STRING_VALUE',
        Substitutions: {
          '<__string>': [
            'STRING_VALUE',
            /* more items */
          ],
          /* '<__string>': ... */
        },
        VoiceId: 'STRING_VALUE'
      }
    },
    Users: { /* required */
      '<__string>': {
        BodyOverride: 'STRING_VALUE',
        Context: {
          '<__string>': 'STRING_VALUE',
          /* '<__string>': ... */
        },
        RawContent: 'STRING_VALUE',
        Substitutions: {
          '<__string>': [
            'STRING_VALUE',
            /* more items */
          ],
          /* '<__string>': ... */
        },
        TitleOverride: 'STRING_VALUE'
      },
      /* '<__string>': ... */
    },
    Context: {
      '<__string>': 'STRING_VALUE',
      /* '<__string>': ... */
    },
    TemplateConfiguration: {
      EmailTemplate: {
        Name: 'STRING_VALUE',
        Version: 'STRING_VALUE'
      },
      InAppTemplate: {
        Name: 'STRING_VALUE',
        Version: 'STRING_VALUE'
      },
      PushTemplate: {
        Name: 'STRING_VALUE',
        Version: 'STRING_VALUE'
      },
      SMSTemplate: {
        Name: 'STRING_VALUE',
        Version: 'STRING_VALUE'
      },
      VoiceTemplate: {
        Name: 'STRING_VALUE',
        Version: 'STRING_VALUE'
      }
    },
    TraceId: 'STRING_VALUE'
  }
};
pinpoint.sendUsersMessages(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • SendUsersMessageRequest — (map)

      Specifies the configuration and other settings for a message to send to all the endpoints that are associated with a list of users.

      • Context — (map<String>)

        A map of custom attribute-value pairs. For a push notification, Amazon Pinpoint adds these attributes to the data.pinpoint object in the body of the notification payload. Amazon Pinpoint also provides these attributes in the events that it generates for users-messages deliveries.

      • MessageConfigurationrequired — (map)

        The settings and content for the default message and any default messages that you defined for specific channels.

        • ADMMessage — (map)

          The default push notification message for the ADM (Amazon Device Messaging) channel. This message overrides the default push notification message (DefaultPushNotificationMessage).

          • Action — (String)

            The action to occur if the recipient taps the push notification. Valid values are:

            • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

            • DEEP_LINK - Your app opens and displays a designated user interface in the app. This action uses the deep-linking features of the Android platform.

            • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

            Possible values include:
            • "OPEN_APP"
            • "DEEP_LINK"
            • "URL"
          • Body — (String)

            The body of the notification message.

          • ConsolidationKey — (String)

            An arbitrary string that indicates that multiple messages are logically the same and that Amazon Device Messaging (ADM) can drop previously enqueued messages in favor of this message.

          • Data — (map<String>)

            The JSON data payload to use for the push notification, if the notification is a silent push notification. This payload is added to the data.pinpoint.jsonBody object of the notification.

          • ExpiresAfter — (String)

            The amount of time, in seconds, that ADM should store the message if the recipient's device is offline. Amazon Pinpoint specifies this value in the expiresAfter parameter when it sends the notification message to ADM.

          • IconReference — (String)

            The icon image name of the asset saved in your app.

          • ImageIconUrl — (String)

            The URL of the large icon image to display in the content view of the push notification.

          • ImageUrl — (String)

            The URL of an image to display in the push notification.

          • MD5 — (String)

            The base64-encoded, MD5 checksum of the value specified by the Data property. ADM uses the MD5 value to verify the integrity of the data.

          • RawContent — (String)

            The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

          • SilentPush — (Boolean)

            Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration or supporting phone home functionality.

          • SmallImageIconUrl — (String)

            The URL of the small icon image to display in the status bar and the content view of the push notification.

          • Sound — (String)

            The sound to play when the recipient receives the push notification. You can use the default stream or specify the file name of a sound resource that's bundled in your app. On an Android platform, the sound file must reside in /res/raw/.

          • Substitutions — (map<Array<String>>)

            The default message variables to use in the notification message. You can override the default variables with individual address variables.

          • Title — (String)

            The title to display above the notification message on the recipient's device.

          • Url — (String)

            The URL to open in the recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

        • APNSMessage — (map)

          The default push notification message for the APNs (Apple Push Notification service) channel. This message overrides the default push notification message (DefaultPushNotificationMessage).

          • APNSPushType — (String)

            The type of push notification to send. Valid values are:

            • alert - For a standard notification that's displayed on recipients' devices and prompts a recipient to interact with the notification.

            • background - For a silent notification that delivers content in the background and isn't displayed on recipients' devices.

            • complication - For a notification that contains update information for an app’s complication timeline.

            • fileprovider - For a notification that signals changes to a File Provider extension.

            • mdm - For a notification that tells managed devices to contact the MDM server.

            • voip - For a notification that provides information about an incoming VoIP call.

            Amazon Pinpoint specifies this value in the apns-push-type request header when it sends the notification message to APNs. If you don't specify a value for this property, Amazon Pinpoint sets the value to alert or background automatically, based on the value that you specify for the SilentPush or RawContent property of the message.

            For more information about the apns-push-type request header, see Sending Notification Requests to APNs on the Apple Developer website.

          • Action — (String)

            The action to occur if the recipient taps the push notification. Valid values are:

            • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

            • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of the iOS platform.

            • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

            Possible values include:
            • "OPEN_APP"
            • "DEEP_LINK"
            • "URL"
          • Badge — (Integer)

            The key that indicates whether and how to modify the badge of your app's icon when the recipient receives the push notification. If this key isn't included in the dictionary, the badge doesn't change. To remove the badge, set this value to 0.

          • Body — (String)

            The body of the notification message.

          • Category — (String)

            The key that indicates the notification type for the push notification. This key is a value that's defined by the identifier property of one of your app's registered categories.

          • CollapseId — (String)

            An arbitrary identifier that, if assigned to multiple messages, APNs uses to coalesce the messages into a single push notification instead of delivering each message individually. This value can't exceed 64 bytes.

            Amazon Pinpoint specifies this value in the apns-collapse-id request header when it sends the notification message to APNs.

          • Data — (map<String>)

            The JSON payload to use for a silent push notification. This payload is added to the data.pinpoint.jsonBody object of the notification.

          • MediaUrl — (String)

            The URL of an image or video to display in the push notification.

          • PreferredAuthenticationMethod — (String)

            The authentication method that you want Amazon Pinpoint to use when authenticating with APNs, CERTIFICATE or TOKEN.

          • Priority — (String)

            para>5 - Low priority, the notification might be delayed, delivered as part of a group, or throttled.

            /listitem>
          • 10 - High priority, the notification is sent immediately. This is the default value. A high priority notification should trigger an alert, play a sound, or badge your app's icon on the recipient's device.

          • /para>

            Amazon Pinpoint specifies this value in the apns-priority request header when it sends the notification message to APNs.

            The equivalent values for Firebase Cloud Messaging (FCM), formerly Google Cloud Messaging (GCM), are normal, for 5, and high, for 10. If you specify an FCM value for this property, Amazon Pinpoint accepts and converts the value to the corresponding APNs value.

          • RawContent — (String)

            The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

            Note: If you specify the raw content of an APNs push notification, the message payload has to include the content-available key. The value of the content-available key has to be an integer, and can only be 0 or 1. If you're sending a standard notification, set the value of content-available to 0. If you're sending a silent (background) notification, set the value of content-available to 1. Additionally, silent notification payloads can't include the alert, badge, or sound keys. For more information, see Generating a Remote Notification and Pushing Background Updates to Your App on the Apple Developer website.
          • SilentPush — (Boolean)

            Specifies whether the notification is a silent push notification. A silent (or background) push notification isn't displayed on recipients' devices. You can use silent push notifications to make small updates to your app, or to display messages in an in-app message center.

            Amazon Pinpoint uses this property to determine the correct value for the apns-push-type request header when it sends the notification message to APNs. If you specify a value of true for this property, Amazon Pinpoint sets the value for the apns-push-type header field to background.

            Note: If you specify the raw content of an APNs push notification, the message payload has to include the content-available key. For silent (background) notifications, set the value of content-available to 1. Additionally, the message payload for a silent notification can't include the alert, badge, or sound keys. For more information, see Generating a Remote Notification and Pushing Background Updates to Your App on the Apple Developer website. Apple has indicated that they will throttle "excessive" background notifications based on current traffic volumes. To prevent your notifications being throttled, Apple recommends that you send no more than 3 silent push notifications to each recipient per hour.
          • Sound — (String)

            The key for the sound to play when the recipient receives the push notification. The value for this key is the name of a sound file in your app's main bundle or the Library/Sounds folder in your app's data container. If the sound file can't be found or you specify default for the value, the system plays the default alert sound.

          • Substitutions — (map<Array<String>>)

            The default message variables to use in the notification message. You can override these default variables with individual address variables.

          • ThreadId — (String)

            The key that represents your app-specific identifier for grouping notifications. If you provide a Notification Content app extension, you can use this value to group your notifications together.

          • TimeToLive — (Integer)

            The amount of time, in seconds, that APNs should store and attempt to deliver the push notification, if the service is unable to deliver the notification the first time. If this value is 0, APNs treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

            Amazon Pinpoint specifies this value in the apns-expiration request header when it sends the notification message to APNs.

          • Title — (String)

            The title to display above the notification message on the recipient's device.

          • Url — (String)

            The URL to open in the recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

        • BaiduMessage — (map)

          The default push notification message for the Baidu (Baidu Cloud Push) channel. This message overrides the default push notification message (DefaultPushNotificationMessage).

          • Action — (String)

            The action to occur if the recipient taps the push notification. Valid values are:

            • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

            • DEEP_LINK - Your app opens and displays a designated user interface in the app. This action uses the deep-linking features of the Android platform.

            • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

            Possible values include:
            • "OPEN_APP"
            • "DEEP_LINK"
            • "URL"
          • Body — (String)

            The body of the notification message.

          • Data — (map<String>)

            The JSON data payload to use for the push notification, if the notification is a silent push notification. This payload is added to the data.pinpoint.jsonBody object of the notification.

          • IconReference — (String)

            The icon image name of the asset saved in your app.

          • ImageIconUrl — (String)

            The URL of the large icon image to display in the content view of the push notification.

          • ImageUrl — (String)

            The URL of an image to display in the push notification.

          • RawContent — (String)

            The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

          • SilentPush — (Boolean)

            Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration or supporting phone home functionality.

          • SmallImageIconUrl — (String)

            The URL of the small icon image to display in the status bar and the content view of the push notification.

          • Sound — (String)

            The sound to play when the recipient receives the push notification. You can use the default stream or specify the file name of a sound resource that's bundled in your app. On an Android platform, the sound file must reside in /res/raw/.

          • Substitutions — (map<Array<String>>)

            The default message variables to use in the notification message. You can override the default variables with individual address variables.

          • TimeToLive — (Integer)

            The amount of time, in seconds, that the Baidu Cloud Push service should store the message if the recipient's device is offline. The default value and maximum supported time is 604,800 seconds (7 days).

          • Title — (String)

            The title to display above the notification message on the recipient's device.

          • Url — (String)

            The URL to open in the recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

        • DefaultMessage — (map)

          The default message for all channels.

          • Body — (String)

            The default body of the message.

          • Substitutions — (map<Array<String>>)

            The default message variables to use in the message. You can override these default variables with individual address variables.

        • DefaultPushNotificationMessage — (map)

          The default push notification message for all push notification channels.

          • Action — (String)

            The default action to occur if a recipient taps the push notification. Valid values are:

            • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

            • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of the iOS and Android platforms.

            • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

            Possible values include:
            • "OPEN_APP"
            • "DEEP_LINK"
            • "URL"
          • Body — (String)

            The default body of the notification message.

          • Data — (map<String>)

            The JSON data payload to use for the default push notification, if the notification is a silent push notification. This payload is added to the data.pinpoint.jsonBody object of the notification.

          • SilentPush — (Boolean)

            Specifies whether the default notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration or delivering messages to an in-app notification center.

          • Substitutions — (map<Array<String>>)

            The default message variables to use in the notification message. You can override the default variables with individual address variables.

          • Title — (String)

            The default title to display above the notification message on a recipient's device.

          • Url — (String)

            The default URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

        • EmailMessage — (map)

          The default message for the email channel. This message overrides the default message (DefaultMessage).

          • Body — (String)

            The body of the email message.

          • FeedbackForwardingAddress — (String)

            The email address to forward bounces and complaints to, if feedback forwarding is enabled.

          • FromAddress — (String)

            The verified email address to send the email message from. The default value is the FromAddress specified for the email channel.

          • RawEmail — (map)

            The email message, represented as a raw MIME message.

            • Data — (Buffer, Typed Array, Blob, String)

              The email message, represented as a raw MIME message. The entire message must be base64 encoded.

          • ReplyToAddresses — (Array<String>)

            The reply-to email address(es) for the email message. If a recipient replies to the email, each reply-to address receives the reply.

          • SimpleEmail — (map)

            The email message, composed of a subject, a text part, and an HTML part.

            • HtmlPart — (map)

              The body of the email message, in HTML format. We recommend using HTML format for email clients that render HTML content. You can include links, formatted text, and more in an HTML message.

              • Charset — (String)

                The applicable character set for the message content.

              • Data — (String)

                The textual data of the message content.

            • Subject — (map)

              The subject line, or title, of the email.

              • Charset — (String)

                The applicable character set for the message content.

              • Data — (String)

                The textual data of the message content.

            • TextPart — (map)

              The body of the email message, in plain text format. We recommend using plain text format for email clients that don't render HTML content and clients that are connected to high-latency networks, such as mobile devices.

              • Charset — (String)

                The applicable character set for the message content.

              • Data — (String)

                The textual data of the message content.

            • Headers — (Array<map>)

              The list of MessageHeaders for the email. You can have up to 15 Headers.

              • Name — (String)

                The name of the message header. The header name can contain up to 126 characters.

              • Value — (String)

                The value of the message header. The header value can contain up to 870 characters, including the length of any rendered attributes. For example if you add the {CreationDate} attribute, it renders as YYYY-MM-DDTHH:MM:SS.SSSZ and is 24 characters in length.

          • Substitutions — (map<Array<String>>)

            The default message variables to use in the email message. You can override the default variables with individual address variables.

        • GCMMessage — (map)

          The default push notification message for the GCM channel, which is used to send notifications through the Firebase Cloud Messaging (FCM), formerly Google Cloud Messaging (GCM), service. This message overrides the default push notification message (DefaultPushNotificationMessage).

          • Action — (String)

            The action to occur if the recipient taps the push notification. Valid values are:

            • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

            • DEEP_LINK - Your app opens and displays a designated user interface in the app. This action uses the deep-linking features of the Android platform.

            • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

            Possible values include:
            • "OPEN_APP"
            • "DEEP_LINK"
            • "URL"
          • Body — (String)

            The body of the notification message.

          • CollapseKey — (String)

            An arbitrary string that identifies a group of messages that can be collapsed to ensure that only the last message is sent when delivery can resume. This helps avoid sending too many instances of the same messages when the recipient's device comes online again or becomes active.

            Amazon Pinpoint specifies this value in the Firebase Cloud Messaging (FCM) collapse_key parameter when it sends the notification message to FCM.

          • Data — (map<String>)

            The JSON data payload to use for the push notification, if the notification is a silent push notification. This payload is added to the data.pinpoint.jsonBody object of the notification.

          • IconReference — (String)

            The icon image name of the asset saved in your app.

          • ImageIconUrl — (String)

            The URL of the large icon image to display in the content view of the push notification.

          • ImageUrl — (String)

            The URL of an image to display in the push notification.

          • PreferredAuthenticationMethod — (String)

            The preferred authentication method, with valid values "KEY" or "TOKEN". If a value isn't provided then the DefaultAuthenticationMethod is used.

          • Priority — (String)

            para>normal – The notification might be delayed. Delivery is optimized for battery usage on the recipient's device. Use this value unless immediate delivery is required.

            /listitem>
          • high – The notification is sent immediately and might wake a sleeping device.

          • /para>

            Amazon Pinpoint specifies this value in the FCM priority parameter when it sends the notification message to FCM.

            The equivalent values for Apple Push Notification service (APNs) are 5, for normal, and 10, for high. If you specify an APNs value for this property, Amazon Pinpoint accepts and converts the value to the corresponding FCM value.

          • RawContent — (String)

            The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

          • RestrictedPackageName — (String)

            The package name of the application where registration tokens must match in order for the recipient to receive the message.

          • SilentPush — (Boolean)

            Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration or supporting phone home functionality.

          • SmallImageIconUrl — (String)

            The URL of the small icon image to display in the status bar and the content view of the push notification.

          • Sound — (String)

            The sound to play when the recipient receives the push notification. You can use the default stream or specify the file name of a sound resource that's bundled in your app. On an Android platform, the sound file must reside in /res/raw/.

          • Substitutions — (map<Array<String>>)

            The default message variables to use in the notification message. You can override the default variables with individual address variables.

          • TimeToLive — (Integer)

            The amount of time, in seconds, that FCM should store and attempt to deliver the push notification, if the service is unable to deliver the notification the first time. If you don't specify this value, FCM defaults to the maximum value, which is 2,419,200 seconds (28 days).

            Amazon Pinpoint specifies this value in the FCM time_to_live parameter when it sends the notification message to FCM.

          • Title — (String)

            The title to display above the notification message on the recipient's device.

          • Url — (String)

            The URL to open in the recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

        • SMSMessage — (map)

          The default message for the SMS channel. This message overrides the default message (DefaultMessage).

          • Body — (String)

            The body of the SMS message.

          • Keyword — (String)

            The SMS program name that you provided to AWS Support when you requested your dedicated number.

          • MediaUrl — (String)

            This field is reserved for future use.

          • MessageType — (String)

            The SMS message type. Valid values are TRANSACTIONAL (for messages that are critical or time-sensitive, such as a one-time passwords) and PROMOTIONAL (for messsages that aren't critical or time-sensitive, such as marketing messages).

            Possible values include:
            • "TRANSACTIONAL"
            • "PROMOTIONAL"
          • OriginationNumber — (String)

            The number to send the SMS message from. This value should be one of the dedicated long or short codes that's assigned to your AWS account. If you don't specify a long or short code, Amazon Pinpoint assigns a random long code to the SMS message and sends the message from that code.

          • SenderId — (String)

            The sender ID to display as the sender of the message on a recipient's device. Support for sender IDs varies by country or region.

          • Substitutions — (map<Array<String>>)

            The message variables to use in the SMS message. You can override the default variables with individual address variables.

          • EntityId — (String)

            The entity ID or Principal Entity (PE) id received from the regulatory body for sending SMS in your country.

          • TemplateId — (String)

            The template ID received from the regulatory body for sending SMS in your country.

        • VoiceMessage — (map)

          The default message for the voice channel. This message overrides the default message (DefaultMessage).

          • Body — (String)

            The text of the script to use for the voice message.

          • LanguageCode — (String)

            The code for the language to use when synthesizing the text of the message script. For a list of supported languages and the code for each one, see the Amazon Polly Developer Guide.

          • OriginationNumber — (String)

            The long code to send the voice message from. This value should be one of the dedicated long codes that's assigned to your AWS account. Although it isn't required, we recommend that you specify the long code in E.164 format, for example +12065550100, to ensure prompt and accurate delivery of the message.

          • Substitutions — (map<Array<String>>)

            The default message variables to use in the voice message. You can override the default variables with individual address variables.

          • VoiceId — (String)

            The name of the voice to use when delivering the message. For a list of supported voices, see the Amazon Polly Developer Guide.

      • TemplateConfiguration — (map)

        The message template to use for the message.

        • EmailTemplate — (map)

          The email template to use for the message.

          • Name — (String)

            The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

          • Version — (String)

            The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

            If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

        • PushTemplate — (map)

          The push notification template to use for the message.

          • Name — (String)

            The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

          • Version — (String)

            The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

            If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

        • SMSTemplate — (map)

          The SMS template to use for the message.

          • Name — (String)

            The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

          • Version — (String)

            The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

            If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

        • VoiceTemplate — (map)

          The voice template to use for the message. This object isn't supported for campaigns.

          • Name — (String)

            The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

          • Version — (String)

            The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

            If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

        • InAppTemplate — (map)

          The InApp template to use for the message. The InApp template object is not supported for SendMessages.

          • Name — (String)

            The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

          • Version — (String)

            The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

            If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

      • TraceId — (String)

        The unique identifier for tracing the message. This identifier is visible to message recipients.

      • Usersrequired — (map<map>)

        A map that associates user IDs with EndpointSendConfiguration objects. You can use an EndpointSendConfiguration object to tailor the message for a user by specifying settings such as content overrides and message variables.

        • BodyOverride — (String)

          The body of the message. If specified, this value overrides the default message body.

        • Context — (map<String>)

          A map of custom attributes to attach to the message for the address. Attribute names are case sensitive.

          For a push notification, this payload is added to the data.pinpoint object. For an email or text message, this payload is added to email/SMS delivery receipt event attributes.

        • RawContent — (String)

          The raw, JSON-formatted string to use as the payload for the message. If specified, this value overrides all other values for the message.

        • Substitutions — (map<Array<String>>)

          A map of the message variables to merge with the variables specified for the default message (DefaultMessage.Substitutions). The variables specified in this map take precedence over all other variables.

        • TitleOverride — (String)

          The title or subject line of the message. If specified, this value overrides the default message title or subject line.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • SendUsersMessageResponse — (map)

        Provides information about which users and endpoints a message was sent to.

        • ApplicationIdrequired — (String)

          The unique identifier for the application that was used to send the message.

        • RequestId — (String)

          The unique identifier that was assigned to the message request.

        • Result — (map<map<map>>)

          An object that indicates which endpoints the message was sent to, for each user. The object lists user IDs and, for each user ID, provides the endpoint IDs that the message was sent to. For each endpoint ID, it provides an EndpointMessageResult object.

          • Address — (String)

            The endpoint address that the message was delivered to.

          • DeliveryStatusrequired — (String)

            The delivery status of the message. Possible values are:

            • DUPLICATE - The endpoint address is a duplicate of another endpoint address. Amazon Pinpoint won't attempt to send the message again.

            • OPT_OUT - The user who's associated with the endpoint has opted out of receiving messages from you. Amazon Pinpoint won't attempt to send the message again.

            • PERMANENT_FAILURE - An error occurred when delivering the message to the endpoint. Amazon Pinpoint won't attempt to send the message again.

            • SUCCESSFUL - The message was successfully delivered to the endpoint.

            • TEMPORARY_FAILURE - A temporary error occurred. Amazon Pinpoint won't attempt to send the message again.

            • THROTTLED - Amazon Pinpoint throttled the operation to send the message to the endpoint.

            • UNKNOWN_FAILURE - An unknown error occurred.

            Possible values include:
            • "SUCCESSFUL"
            • "THROTTLED"
            • "TEMPORARY_FAILURE"
            • "PERMANENT_FAILURE"
            • "UNKNOWN_FAILURE"
            • "OPT_OUT"
            • "DUPLICATE"
          • MessageId — (String)

            The unique identifier for the message that was sent.

          • StatusCoderequired — (Integer)

            The downstream service status code for delivering the message.

          • StatusMessage — (String)

            The status message for delivering the message.

          • UpdatedToken — (String)

            For push notifications that are sent through the GCM channel, specifies whether the endpoint's device registration token was updated as part of delivering the message.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

tagResource(params = {}, callback) ⇒ AWS.Request

Adds one or more tags (keys and values) to an application, campaign, message template, or segment.

Service Reference:

Examples:

Calling the tagResource operation

var params = {
  ResourceArn: 'STRING_VALUE', /* required */
  TagsModel: { /* required */
    tags: { /* required */
      '<__string>': 'STRING_VALUE',
      /* '<__string>': ... */
    }
  }
};
pinpoint.tagResource(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ResourceArn — (String)

      The Amazon Resource Name (ARN) of the resource.

    • TagsModel — (map)

      Specifies the tags (keys and values) for an application, campaign, message template, or segment.

      • tagsrequired — (map<String>)

        A string-to-string map of key-value pairs that defines the tags for an application, campaign, message template, or segment. Each of these resources can have a maximum of 50 tags.

        Each tag consists of a required tag key and an associated tag value. The maximum length of a tag key is 128 characters. The maximum length of a tag value is 256 characters.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

untagResource(params = {}, callback) ⇒ AWS.Request

Removes one or more tags (keys and values) from an application, campaign, message template, or segment.

Service Reference:

Examples:

Calling the untagResource operation

var params = {
  ResourceArn: 'STRING_VALUE', /* required */
  TagKeys: [ /* required */
    'STRING_VALUE',
    /* more items */
  ]
};
pinpoint.untagResource(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ResourceArn — (String)

      The Amazon Resource Name (ARN) of the resource.

    • TagKeys — (Array<String>)

      The key of the tag to remove from the resource. To remove multiple tags, append the tagKeys parameter and argument for each additional tag to remove, separated by an ampersand (&).

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

updateAdmChannel(params = {}, callback) ⇒ AWS.Request

Enables the ADM channel for an application or updates the status and settings of the ADM channel for an application.

Service Reference:

Examples:

Calling the updateAdmChannel operation

var params = {
  ADMChannelRequest: { /* required */
    ClientId: 'STRING_VALUE', /* required */
    ClientSecret: 'STRING_VALUE', /* required */
    Enabled: true || false
  },
  ApplicationId: 'STRING_VALUE' /* required */
};
pinpoint.updateAdmChannel(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ADMChannelRequest — (map)

      Specifies the status and settings of the ADM (Amazon Device Messaging) channel for an application.

      • ClientIdrequired — (String)

        The Client ID that you received from Amazon to send messages by using ADM.

      • ClientSecretrequired — (String)

        The Client Secret that you received from Amazon to send messages by using ADM.

      • Enabled — (Boolean)

        Specifies whether to enable the ADM channel for the application.

    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • ADMChannelResponse — (map)

        Provides information about the status and settings of the ADM (Amazon Device Messaging) channel for an application.

        • ApplicationId — (String)

          The unique identifier for the application that the ADM channel applies to.

        • CreationDate — (String)

          The date and time when the ADM channel was enabled.

        • Enabled — (Boolean)

          Specifies whether the ADM channel is enabled for the application.

        • HasCredential — (Boolean)

          (Not used) This property is retained only for backward compatibility.

        • Id — (String)

          (Deprecated) An identifier for the ADM channel. This property is retained only for backward compatibility.

        • IsArchived — (Boolean)

          Specifies whether the ADM channel is archived.

        • LastModifiedBy — (String)

          The user who last modified the ADM channel.

        • LastModifiedDate — (String)

          The date and time when the ADM channel was last modified.

        • Platformrequired — (String)

          The type of messaging or notification platform for the channel. For the ADM channel, this value is ADM.

        • Version — (Integer)

          The current version of the ADM channel.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

updateApnsChannel(params = {}, callback) ⇒ AWS.Request

Enables the APNs channel for an application or updates the status and settings of the APNs channel for an application.

Service Reference:

Examples:

Calling the updateApnsChannel operation

var params = {
  APNSChannelRequest: { /* required */
    BundleId: 'STRING_VALUE',
    Certificate: 'STRING_VALUE',
    DefaultAuthenticationMethod: 'STRING_VALUE',
    Enabled: true || false,
    PrivateKey: 'STRING_VALUE',
    TeamId: 'STRING_VALUE',
    TokenKey: 'STRING_VALUE',
    TokenKeyId: 'STRING_VALUE'
  },
  ApplicationId: 'STRING_VALUE' /* required */
};
pinpoint.updateApnsChannel(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • APNSChannelRequest — (map)

      Specifies the status and settings of the APNs (Apple Push Notification service) channel for an application.

      • BundleId — (String)

        The bundle identifier that's assigned to your iOS app. This identifier is used for APNs tokens.

      • Certificate — (String)

        The APNs client certificate that you received from Apple, if you want Amazon Pinpoint to communicate with APNs by using an APNs certificate.

      • DefaultAuthenticationMethod — (String)

        The default authentication method that you want Amazon Pinpoint to use when authenticating with APNs, key or certificate.

      • Enabled — (Boolean)

        Specifies whether to enable the APNs channel for the application.

      • PrivateKey — (String)

        The private key for the APNs client certificate that you want Amazon Pinpoint to use to communicate with APNs.

      • TeamId — (String)

        The identifier that's assigned to your Apple developer account team. This identifier is used for APNs tokens.

      • TokenKey — (String)

        The authentication key to use for APNs tokens.

      • TokenKeyId — (String)

        The key identifier that's assigned to your APNs signing key, if you want Amazon Pinpoint to communicate with APNs by using APNs tokens.

    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • APNSChannelResponse — (map)

        Provides information about the status and settings of the APNs (Apple Push Notification service) channel for an application.

        • ApplicationId — (String)

          The unique identifier for the application that the APNs channel applies to.

        • CreationDate — (String)

          The date and time when the APNs channel was enabled.

        • DefaultAuthenticationMethod — (String)

          The default authentication method that Amazon Pinpoint uses to authenticate with APNs for this channel, key or certificate.

        • Enabled — (Boolean)

          Specifies whether the APNs channel is enabled for the application.

        • HasCredential — (Boolean)

          (Not used) This property is retained only for backward compatibility.

        • HasTokenKey — (Boolean)

          Specifies whether the APNs channel is configured to communicate with APNs by using APNs tokens. To provide an authentication key for APNs tokens, set the TokenKey property of the channel.

        • Id — (String)

          (Deprecated) An identifier for the APNs channel. This property is retained only for backward compatibility.

        • IsArchived — (Boolean)

          Specifies whether the APNs channel is archived.

        • LastModifiedBy — (String)

          The user who last modified the APNs channel.

        • LastModifiedDate — (String)

          The date and time when the APNs channel was last modified.

        • Platformrequired — (String)

          The type of messaging or notification platform for the channel. For the APNs channel, this value is APNS.

        • Version — (Integer)

          The current version of the APNs channel.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

updateApnsSandboxChannel(params = {}, callback) ⇒ AWS.Request

Enables the APNs sandbox channel for an application or updates the status and settings of the APNs sandbox channel for an application.

Service Reference:

Examples:

Calling the updateApnsSandboxChannel operation

var params = {
  APNSSandboxChannelRequest: { /* required */
    BundleId: 'STRING_VALUE',
    Certificate: 'STRING_VALUE',
    DefaultAuthenticationMethod: 'STRING_VALUE',
    Enabled: true || false,
    PrivateKey: 'STRING_VALUE',
    TeamId: 'STRING_VALUE',
    TokenKey: 'STRING_VALUE',
    TokenKeyId: 'STRING_VALUE'
  },
  ApplicationId: 'STRING_VALUE' /* required */
};
pinpoint.updateApnsSandboxChannel(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • APNSSandboxChannelRequest — (map)

      Specifies the status and settings of the APNs (Apple Push Notification service) sandbox channel for an application.

      • BundleId — (String)

        The bundle identifier that's assigned to your iOS app. This identifier is used for APNs tokens.

      • Certificate — (String)

        The APNs client certificate that you received from Apple, if you want Amazon Pinpoint to communicate with the APNs sandbox environment by using an APNs certificate.

      • DefaultAuthenticationMethod — (String)

        The default authentication method that you want Amazon Pinpoint to use when authenticating with the APNs sandbox environment, key or certificate.

      • Enabled — (Boolean)

        Specifies whether to enable the APNs sandbox channel for the application.

      • PrivateKey — (String)

        The private key for the APNs client certificate that you want Amazon Pinpoint to use to communicate with the APNs sandbox environment.

      • TeamId — (String)

        The identifier that's assigned to your Apple developer account team. This identifier is used for APNs tokens.

      • TokenKey — (String)

        The authentication key to use for APNs tokens.

      • TokenKeyId — (String)

        The key identifier that's assigned to your APNs signing key, if you want Amazon Pinpoint to communicate with the APNs sandbox environment by using APNs tokens.

    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • APNSSandboxChannelResponse — (map)

        Provides information about the status and settings of the APNs (Apple Push Notification service) sandbox channel for an application.

        • ApplicationId — (String)

          The unique identifier for the application that the APNs sandbox channel applies to.

        • CreationDate — (String)

          The date and time when the APNs sandbox channel was enabled.

        • DefaultAuthenticationMethod — (String)

          The default authentication method that Amazon Pinpoint uses to authenticate with the APNs sandbox environment for this channel, key or certificate.

        • Enabled — (Boolean)

          Specifies whether the APNs sandbox channel is enabled for the application.

        • HasCredential — (Boolean)

          (Not used) This property is retained only for backward compatibility.

        • HasTokenKey — (Boolean)

          Specifies whether the APNs sandbox channel is configured to communicate with APNs by using APNs tokens. To provide an authentication key for APNs tokens, set the TokenKey property of the channel.

        • Id — (String)

          (Deprecated) An identifier for the APNs sandbox channel. This property is retained only for backward compatibility.

        • IsArchived — (Boolean)

          Specifies whether the APNs sandbox channel is archived.

        • LastModifiedBy — (String)

          The user who last modified the APNs sandbox channel.

        • LastModifiedDate — (String)

          The date and time when the APNs sandbox channel was last modified.

        • Platformrequired — (String)

          The type of messaging or notification platform for the channel. For the APNs sandbox channel, this value is APNS_SANDBOX.

        • Version — (Integer)

          The current version of the APNs sandbox channel.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

updateApnsVoipChannel(params = {}, callback) ⇒ AWS.Request

Enables the APNs VoIP channel for an application or updates the status and settings of the APNs VoIP channel for an application.

Service Reference:

Examples:

Calling the updateApnsVoipChannel operation

var params = {
  APNSVoipChannelRequest: { /* required */
    BundleId: 'STRING_VALUE',
    Certificate: 'STRING_VALUE',
    DefaultAuthenticationMethod: 'STRING_VALUE',
    Enabled: true || false,
    PrivateKey: 'STRING_VALUE',
    TeamId: 'STRING_VALUE',
    TokenKey: 'STRING_VALUE',
    TokenKeyId: 'STRING_VALUE'
  },
  ApplicationId: 'STRING_VALUE' /* required */
};
pinpoint.updateApnsVoipChannel(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • APNSVoipChannelRequest — (map)

      Specifies the status and settings of the APNs (Apple Push Notification service) VoIP channel for an application.

      • BundleId — (String)

        The bundle identifier that's assigned to your iOS app. This identifier is used for APNs tokens.

      • Certificate — (String)

        The APNs client certificate that you received from Apple, if you want Amazon Pinpoint to communicate with APNs by using an APNs certificate.

      • DefaultAuthenticationMethod — (String)

        The default authentication method that you want Amazon Pinpoint to use when authenticating with APNs, key or certificate.

      • Enabled — (Boolean)

        Specifies whether to enable the APNs VoIP channel for the application.

      • PrivateKey — (String)

        The private key for the APNs client certificate that you want Amazon Pinpoint to use to communicate with APNs.

      • TeamId — (String)

        The identifier that's assigned to your Apple developer account team. This identifier is used for APNs tokens.

      • TokenKey — (String)

        The authentication key to use for APNs tokens.

      • TokenKeyId — (String)

        The key identifier that's assigned to your APNs signing key, if you want Amazon Pinpoint to communicate with APNs by using APNs tokens.

    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • APNSVoipChannelResponse — (map)

        Provides information about the status and settings of the APNs (Apple Push Notification service) VoIP channel for an application.

        • ApplicationId — (String)

          The unique identifier for the application that the APNs VoIP channel applies to.

        • CreationDate — (String)

          The date and time when the APNs VoIP channel was enabled.

        • DefaultAuthenticationMethod — (String)

          The default authentication method that Amazon Pinpoint uses to authenticate with APNs for this channel, key or certificate.

        • Enabled — (Boolean)

          Specifies whether the APNs VoIP channel is enabled for the application.

        • HasCredential — (Boolean)

          (Not used) This property is retained only for backward compatibility.

        • HasTokenKey — (Boolean)

          Specifies whether the APNs VoIP channel is configured to communicate with APNs by using APNs tokens. To provide an authentication key for APNs tokens, set the TokenKey property of the channel.

        • Id — (String)

          (Deprecated) An identifier for the APNs VoIP channel. This property is retained only for backward compatibility.

        • IsArchived — (Boolean)

          Specifies whether the APNs VoIP channel is archived.

        • LastModifiedBy — (String)

          The user who last modified the APNs VoIP channel.

        • LastModifiedDate — (String)

          The date and time when the APNs VoIP channel was last modified.

        • Platformrequired — (String)

          The type of messaging or notification platform for the channel. For the APNs VoIP channel, this value is APNS_VOIP.

        • Version — (Integer)

          The current version of the APNs VoIP channel.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

updateApnsVoipSandboxChannel(params = {}, callback) ⇒ AWS.Request

Enables the APNs VoIP sandbox channel for an application or updates the status and settings of the APNs VoIP sandbox channel for an application.

Service Reference:

Examples:

Calling the updateApnsVoipSandboxChannel operation

var params = {
  APNSVoipSandboxChannelRequest: { /* required */
    BundleId: 'STRING_VALUE',
    Certificate: 'STRING_VALUE',
    DefaultAuthenticationMethod: 'STRING_VALUE',
    Enabled: true || false,
    PrivateKey: 'STRING_VALUE',
    TeamId: 'STRING_VALUE',
    TokenKey: 'STRING_VALUE',
    TokenKeyId: 'STRING_VALUE'
  },
  ApplicationId: 'STRING_VALUE' /* required */
};
pinpoint.updateApnsVoipSandboxChannel(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • APNSVoipSandboxChannelRequest — (map)

      Specifies the status and settings of the APNs (Apple Push Notification service) VoIP sandbox channel for an application.

      • BundleId — (String)

        The bundle identifier that's assigned to your iOS app. This identifier is used for APNs tokens.

      • Certificate — (String)

        The APNs client certificate that you received from Apple, if you want Amazon Pinpoint to communicate with the APNs sandbox environment by using an APNs certificate.

      • DefaultAuthenticationMethod — (String)

        The default authentication method that you want Amazon Pinpoint to use when authenticating with the APNs sandbox environment for this channel, key or certificate.

      • Enabled — (Boolean)

        Specifies whether the APNs VoIP sandbox channel is enabled for the application.

      • PrivateKey — (String)

        The private key for the APNs client certificate that you want Amazon Pinpoint to use to communicate with the APNs sandbox environment.

      • TeamId — (String)

        The identifier that's assigned to your Apple developer account team. This identifier is used for APNs tokens.

      • TokenKey — (String)

        The authentication key to use for APNs tokens.

      • TokenKeyId — (String)

        The key identifier that's assigned to your APNs signing key, if you want Amazon Pinpoint to communicate with the APNs sandbox environment by using APNs tokens.

    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • APNSVoipSandboxChannelResponse — (map)

        Provides information about the status and settings of the APNs (Apple Push Notification service) VoIP sandbox channel for an application.

        • ApplicationId — (String)

          The unique identifier for the application that the APNs VoIP sandbox channel applies to.

        • CreationDate — (String)

          The date and time when the APNs VoIP sandbox channel was enabled.

        • DefaultAuthenticationMethod — (String)

          The default authentication method that Amazon Pinpoint uses to authenticate with the APNs sandbox environment for this channel, key or certificate.

        • Enabled — (Boolean)

          Specifies whether the APNs VoIP sandbox channel is enabled for the application.

        • HasCredential — (Boolean)

          (Not used) This property is retained only for backward compatibility.

        • HasTokenKey — (Boolean)

          Specifies whether the APNs VoIP sandbox channel is configured to communicate with APNs by using APNs tokens. To provide an authentication key for APNs tokens, set the TokenKey property of the channel.

        • Id — (String)

          (Deprecated) An identifier for the APNs VoIP sandbox channel. This property is retained only for backward compatibility.

        • IsArchived — (Boolean)

          Specifies whether the APNs VoIP sandbox channel is archived.

        • LastModifiedBy — (String)

          The user who last modified the APNs VoIP sandbox channel.

        • LastModifiedDate — (String)

          The date and time when the APNs VoIP sandbox channel was last modified.

        • Platformrequired — (String)

          The type of messaging or notification platform for the channel. For the APNs VoIP sandbox channel, this value is APNS_VOIP_SANDBOX.

        • Version — (Integer)

          The current version of the APNs VoIP sandbox channel.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

updateApplicationSettings(params = {}, callback) ⇒ AWS.Request

Updates the settings for an application.

Service Reference:

Examples:

Calling the updateApplicationSettings operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  WriteApplicationSettingsRequest: { /* required */
    CampaignHook: {
      LambdaFunctionName: 'STRING_VALUE',
      Mode: DELIVERY | FILTER,
      WebUrl: 'STRING_VALUE'
    },
    CloudWatchMetricsEnabled: true || false,
    EventTaggingEnabled: true || false,
    JourneyLimits: {
      DailyCap: 'NUMBER_VALUE',
      TimeframeCap: {
        Cap: 'NUMBER_VALUE',
        Days: 'NUMBER_VALUE'
      },
      TotalCap: 'NUMBER_VALUE'
    },
    Limits: {
      Daily: 'NUMBER_VALUE',
      MaximumDuration: 'NUMBER_VALUE',
      MessagesPerSecond: 'NUMBER_VALUE',
      Session: 'NUMBER_VALUE',
      Total: 'NUMBER_VALUE'
    },
    QuietTime: {
      End: 'STRING_VALUE',
      Start: 'STRING_VALUE'
    }
  }
};
pinpoint.updateApplicationSettings(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • WriteApplicationSettingsRequest — (map)

      Specifies the default settings for an application.

      • CampaignHook — (map)

        The settings for the AWS Lambda function to invoke by default as a code hook for campaigns in the application. You can use this hook to customize segments that are used by campaigns in the application.

        To override these settings and define custom settings for a specific campaign, use the CampaignHook object of the Campaign resource.

        • LambdaFunctionName — (String)

          The name or Amazon Resource Name (ARN) of the AWS Lambda function that Amazon Pinpoint invokes to customize a segment for a campaign.

        • Mode — (String)

          The mode that Amazon Pinpoint uses to invoke the AWS Lambda function. Possible values are:

          • FILTER - Invoke the function to customize the segment that's used by a campaign.

          • DELIVERY - (Deprecated) Previously, invoked the function to send a campaign through a custom channel. This functionality is not supported anymore. To send a campaign through a custom channel, use the CustomDeliveryConfiguration and CampaignCustomMessage objects of the campaign.

          Possible values include:
          • "DELIVERY"
          • "FILTER"
        • WebUrl — (String)

          The web URL that Amazon Pinpoint calls to invoke the AWS Lambda function over HTTPS.

      • CloudWatchMetricsEnabled — (Boolean)

        Specifies whether to enable application-related alarms in Amazon CloudWatch.

      • EventTaggingEnabled — (Boolean)
      • Limits — (map)

        The default sending limits for campaigns in the application. To override these limits and define custom limits for a specific campaign or journey, use the Campaign resource or the Journey resource, respectively.

        • Daily — (Integer)

          The maximum number of messages that a campaign can send to a single endpoint during a 24-hour period. For an application, this value specifies the default limit for the number of messages that campaigns and journeys can send to a single endpoint during a 24-hour period. The maximum value is 100.

        • MaximumDuration — (Integer)

          The maximum amount of time, in seconds, that a campaign can attempt to deliver a message after the scheduled start time for the campaign. The minimum value is 60 seconds.

        • MessagesPerSecond — (Integer)

          The maximum number of messages that a campaign can send each second. For an application, this value specifies the default limit for the number of messages that campaigns can send each second. The minimum value is 1. The maximum value is 20,000.

        • Total — (Integer)

          The maximum number of messages that a campaign can send to a single endpoint during the course of the campaign. If a campaign recurs, this setting applies to all runs of the campaign. The maximum value is 100.

        • Session — (Integer)

          The maximum total number of messages that the campaign can send per user session.

      • QuietTime — (map)

        The default quiet time for campaigns in the application. Quiet time is a specific time range when messages aren't sent to endpoints, if all the following conditions are met:

        • The EndpointDemographic.Timezone property of the endpoint is set to a valid value.

        • The current time in the endpoint's time zone is later than or equal to the time specified by the QuietTime.Start property for the application (or a campaign or journey that has custom quiet time settings).

        • The current time in the endpoint's time zone is earlier than or equal to the time specified by the QuietTime.End property for the application (or a campaign or journey that has custom quiet time settings).

        If any of the preceding conditions isn't met, the endpoint will receive messages from a campaign or journey, even if quiet time is enabled.

        To override the default quiet time settings for a specific campaign or journey, use the Campaign resource or the Journey resource to define a custom quiet time for the campaign or journey.

        • End — (String)

          The specific time when quiet time ends. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

        • Start — (String)

          The specific time when quiet time begins. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

      • JourneyLimits — (map)

        The default sending limits for journeys in the application. These limits apply to each journey for the application but can be overridden, on a per journey basis, with the JourneyLimits resource.

        • DailyCap — (Integer)

          The daily number of messages that an endpoint can receive from all journeys. The maximum value is 100. If set to 0, this limit will not apply.

        • TimeframeCap — (map)

          The default maximum number of messages that can be sent to an endpoint during the specified timeframe for all journeys.

          • Cap — (Integer)

            The maximum number of messages that all journeys can send to an endpoint during the specified timeframe. The maximum value is 100. If set to 0, this limit will not apply.

          • Days — (Integer)

            The length of the timeframe in days. The maximum value is 30. If set to 0, this limit will not apply.

        • TotalCap — (Integer)

          The default maximum number of messages that a single journey can sent to a single endpoint. The maximum value is 100. If set to 0, this limit will not apply.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • ApplicationSettingsResource — (map)

        Provides information about an application, including the default settings for an application.

        • ApplicationIdrequired — (String)

          The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

        • CampaignHook — (map)

          The settings for the AWS Lambda function to invoke by default as a code hook for campaigns in the application. You can use this hook to customize segments that are used by campaigns in the application.

          • LambdaFunctionName — (String)

            The name or Amazon Resource Name (ARN) of the AWS Lambda function that Amazon Pinpoint invokes to customize a segment for a campaign.

          • Mode — (String)

            The mode that Amazon Pinpoint uses to invoke the AWS Lambda function. Possible values are:

            • FILTER - Invoke the function to customize the segment that's used by a campaign.

            • DELIVERY - (Deprecated) Previously, invoked the function to send a campaign through a custom channel. This functionality is not supported anymore. To send a campaign through a custom channel, use the CustomDeliveryConfiguration and CampaignCustomMessage objects of the campaign.

            Possible values include:
            • "DELIVERY"
            • "FILTER"
          • WebUrl — (String)

            The web URL that Amazon Pinpoint calls to invoke the AWS Lambda function over HTTPS.

        • LastModifiedDate — (String)

          The date and time, in ISO 8601 format, when the application's settings were last modified.

        • Limits — (map)

          The default sending limits for campaigns in the application.

          • Daily — (Integer)

            The maximum number of messages that a campaign can send to a single endpoint during a 24-hour period. For an application, this value specifies the default limit for the number of messages that campaigns and journeys can send to a single endpoint during a 24-hour period. The maximum value is 100.

          • MaximumDuration — (Integer)

            The maximum amount of time, in seconds, that a campaign can attempt to deliver a message after the scheduled start time for the campaign. The minimum value is 60 seconds.

          • MessagesPerSecond — (Integer)

            The maximum number of messages that a campaign can send each second. For an application, this value specifies the default limit for the number of messages that campaigns can send each second. The minimum value is 1. The maximum value is 20,000.

          • Total — (Integer)

            The maximum number of messages that a campaign can send to a single endpoint during the course of the campaign. If a campaign recurs, this setting applies to all runs of the campaign. The maximum value is 100.

          • Session — (Integer)

            The maximum total number of messages that the campaign can send per user session.

        • QuietTime — (map)

          The default quiet time for campaigns in the application. Quiet time is a specific time range when messages aren't sent to endpoints, if all the following conditions are met:

          • The EndpointDemographic.Timezone property of the endpoint is set to a valid value.

          • The current time in the endpoint's time zone is later than or equal to the time specified by the QuietTime.Start property for the application (or a campaign or journey that has custom quiet time settings).

          • The current time in the endpoint's time zone is earlier than or equal to the time specified by the QuietTime.End property for the application (or a campaign or journey that has custom quiet time settings).

          If any of the preceding conditions isn't met, the endpoint will receive messages from a campaign or journey, even if quiet time is enabled.

          • End — (String)

            The specific time when quiet time ends. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

          • Start — (String)

            The specific time when quiet time begins. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

        • JourneyLimits — (map)

          The default sending limits for journeys in the application. These limits apply to each journey for the application but can be overridden, on a per journey basis, with the JourneyLimits resource.

          • DailyCap — (Integer)

            The daily number of messages that an endpoint can receive from all journeys. The maximum value is 100. If set to 0, this limit will not apply.

          • TimeframeCap — (map)

            The default maximum number of messages that can be sent to an endpoint during the specified timeframe for all journeys.

            • Cap — (Integer)

              The maximum number of messages that all journeys can send to an endpoint during the specified timeframe. The maximum value is 100. If set to 0, this limit will not apply.

            • Days — (Integer)

              The length of the timeframe in days. The maximum value is 30. If set to 0, this limit will not apply.

          • TotalCap — (Integer)

            The default maximum number of messages that a single journey can sent to a single endpoint. The maximum value is 100. If set to 0, this limit will not apply.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

updateBaiduChannel(params = {}, callback) ⇒ AWS.Request

Enables the Baidu channel for an application or updates the status and settings of the Baidu channel for an application.

Service Reference:

Examples:

Calling the updateBaiduChannel operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  BaiduChannelRequest: { /* required */
    ApiKey: 'STRING_VALUE', /* required */
    SecretKey: 'STRING_VALUE', /* required */
    Enabled: true || false
  }
};
pinpoint.updateBaiduChannel(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • BaiduChannelRequest — (map)

      Specifies the status and settings of the Baidu (Baidu Cloud Push) channel for an application.

      • ApiKeyrequired — (String)

        The API key that you received from the Baidu Cloud Push service to communicate with the service.

      • Enabled — (Boolean)

        Specifies whether to enable the Baidu channel for the application.

      • SecretKeyrequired — (String)

        The secret key that you received from the Baidu Cloud Push service to communicate with the service.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • BaiduChannelResponse — (map)

        Provides information about the status and settings of the Baidu (Baidu Cloud Push) channel for an application.

        • ApplicationId — (String)

          The unique identifier for the application that the Baidu channel applies to.

        • CreationDate — (String)

          The date and time when the Baidu channel was enabled.

        • Credentialrequired — (String)

          The API key that you received from the Baidu Cloud Push service to communicate with the service.

        • Enabled — (Boolean)

          Specifies whether the Baidu channel is enabled for the application.

        • HasCredential — (Boolean)

          (Not used) This property is retained only for backward compatibility.

        • Id — (String)

          (Deprecated) An identifier for the Baidu channel. This property is retained only for backward compatibility.

        • IsArchived — (Boolean)

          Specifies whether the Baidu channel is archived.

        • LastModifiedBy — (String)

          The user who last modified the Baidu channel.

        • LastModifiedDate — (String)

          The date and time when the Baidu channel was last modified.

        • Platformrequired — (String)

          The type of messaging or notification platform for the channel. For the Baidu channel, this value is BAIDU.

        • Version — (Integer)

          The current version of the Baidu channel.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

updateCampaign(params = {}, callback) ⇒ AWS.Request

Updates the configuration and other settings for a campaign.

Service Reference:

Examples:

Calling the updateCampaign operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  CampaignId: 'STRING_VALUE', /* required */
  WriteCampaignRequest: { /* required */
    AdditionalTreatments: [
      {
        SizePercent: 'NUMBER_VALUE', /* required */
        CustomDeliveryConfiguration: {
          DeliveryUri: 'STRING_VALUE', /* required */
          EndpointTypes: [
            PUSH | GCM | APNS | APNS_SANDBOX | APNS_VOIP | APNS_VOIP_SANDBOX | ADM | SMS | VOICE | EMAIL | BAIDU | CUSTOM | IN_APP,
            /* more items */
          ]
        },
        MessageConfiguration: {
          ADMMessage: {
            Action: OPEN_APP | DEEP_LINK | URL,
            Body: 'STRING_VALUE',
            ImageIconUrl: 'STRING_VALUE',
            ImageSmallIconUrl: 'STRING_VALUE',
            ImageUrl: 'STRING_VALUE',
            JsonBody: 'STRING_VALUE',
            MediaUrl: 'STRING_VALUE',
            RawContent: 'STRING_VALUE',
            SilentPush: true || false,
            TimeToLive: 'NUMBER_VALUE',
            Title: 'STRING_VALUE',
            Url: 'STRING_VALUE'
          },
          APNSMessage: {
            Action: OPEN_APP | DEEP_LINK | URL,
            Body: 'STRING_VALUE',
            ImageIconUrl: 'STRING_VALUE',
            ImageSmallIconUrl: 'STRING_VALUE',
            ImageUrl: 'STRING_VALUE',
            JsonBody: 'STRING_VALUE',
            MediaUrl: 'STRING_VALUE',
            RawContent: 'STRING_VALUE',
            SilentPush: true || false,
            TimeToLive: 'NUMBER_VALUE',
            Title: 'STRING_VALUE',
            Url: 'STRING_VALUE'
          },
          BaiduMessage: {
            Action: OPEN_APP | DEEP_LINK | URL,
            Body: 'STRING_VALUE',
            ImageIconUrl: 'STRING_VALUE',
            ImageSmallIconUrl: 'STRING_VALUE',
            ImageUrl: 'STRING_VALUE',
            JsonBody: 'STRING_VALUE',
            MediaUrl: 'STRING_VALUE',
            RawContent: 'STRING_VALUE',
            SilentPush: true || false,
            TimeToLive: 'NUMBER_VALUE',
            Title: 'STRING_VALUE',
            Url: 'STRING_VALUE'
          },
          CustomMessage: {
            Data: 'STRING_VALUE'
          },
          DefaultMessage: {
            Action: OPEN_APP | DEEP_LINK | URL,
            Body: 'STRING_VALUE',
            ImageIconUrl: 'STRING_VALUE',
            ImageSmallIconUrl: 'STRING_VALUE',
            ImageUrl: 'STRING_VALUE',
            JsonBody: 'STRING_VALUE',
            MediaUrl: 'STRING_VALUE',
            RawContent: 'STRING_VALUE',
            SilentPush: true || false,
            TimeToLive: 'NUMBER_VALUE',
            Title: 'STRING_VALUE',
            Url: 'STRING_VALUE'
          },
          EmailMessage: {
            Body: 'STRING_VALUE',
            FromAddress: 'STRING_VALUE',
            Headers: [
              {
                Name: 'STRING_VALUE',
                Value: 'STRING_VALUE'
              },
              /* more items */
            ],
            HtmlBody: 'STRING_VALUE',
            Title: 'STRING_VALUE'
          },
          GCMMessage: {
            Action: OPEN_APP | DEEP_LINK | URL,
            Body: 'STRING_VALUE',
            ImageIconUrl: 'STRING_VALUE',
            ImageSmallIconUrl: 'STRING_VALUE',
            ImageUrl: 'STRING_VALUE',
            JsonBody: 'STRING_VALUE',
            MediaUrl: 'STRING_VALUE',
            RawContent: 'STRING_VALUE',
            SilentPush: true || false,
            TimeToLive: 'NUMBER_VALUE',
            Title: 'STRING_VALUE',
            Url: 'STRING_VALUE'
          },
          InAppMessage: {
            Body: 'STRING_VALUE',
            Content: [
              {
                BackgroundColor: 'STRING_VALUE',
                BodyConfig: {
                  Alignment: LEFT | CENTER | RIGHT, /* required */
                  Body: 'STRING_VALUE', /* required */
                  TextColor: 'STRING_VALUE' /* required */
                },
                HeaderConfig: {
                  Alignment: LEFT | CENTER | RIGHT, /* required */
                  Header: 'STRING_VALUE', /* required */
                  TextColor: 'STRING_VALUE' /* required */
                },
                ImageUrl: 'STRING_VALUE',
                PrimaryBtn: {
                  Android: {
                    ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
                    Link: 'STRING_VALUE'
                  },
                  DefaultConfig: {
                    ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
                    Text: 'STRING_VALUE', /* required */
                    BackgroundColor: 'STRING_VALUE',
                    BorderRadius: 'NUMBER_VALUE',
                    Link: 'STRING_VALUE',
                    TextColor: 'STRING_VALUE'
                  },
                  IOS: {
                    ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
                    Link: 'STRING_VALUE'
                  },
                  Web: {
                    ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
                    Link: 'STRING_VALUE'
                  }
                },
                SecondaryBtn: {
                  Android: {
                    ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
                    Link: 'STRING_VALUE'
                  },
                  DefaultConfig: {
                    ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
                    Text: 'STRING_VALUE', /* required */
                    BackgroundColor: 'STRING_VALUE',
                    BorderRadius: 'NUMBER_VALUE',
                    Link: 'STRING_VALUE',
                    TextColor: 'STRING_VALUE'
                  },
                  IOS: {
                    ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
                    Link: 'STRING_VALUE'
                  },
                  Web: {
                    ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
                    Link: 'STRING_VALUE'
                  }
                }
              },
              /* more items */
            ],
            CustomConfig: {
              '<__string>': 'STRING_VALUE',
              /* '<__string>': ... */
            },
            Layout: BOTTOM_BANNER | TOP_BANNER | OVERLAYS | MOBILE_FEED | MIDDLE_BANNER | CAROUSEL
          },
          SMSMessage: {
            Body: 'STRING_VALUE',
            EntityId: 'STRING_VALUE',
            MessageType: TRANSACTIONAL | PROMOTIONAL,
            OriginationNumber: 'STRING_VALUE',
            SenderId: 'STRING_VALUE',
            TemplateId: 'STRING_VALUE'
          }
        },
        Schedule: {
          StartTime: 'STRING_VALUE', /* required */
          EndTime: 'STRING_VALUE',
          EventFilter: {
            Dimensions: { /* required */
              Attributes: {
                '<__string>': {
                  Values: [ /* required */
                    'STRING_VALUE',
                    /* more items */
                  ],
                  AttributeType: INCLUSIVE | EXCLUSIVE | CONTAINS | BEFORE | AFTER | ON | BETWEEN
                },
                /* '<__string>': ... */
              },
              EventType: {
                Values: [ /* required */
                  'STRING_VALUE',
                  /* more items */
                ],
                DimensionType: INCLUSIVE | EXCLUSIVE
              },
              Metrics: {
                '<__string>': {
                  ComparisonOperator: 'STRING_VALUE', /* required */
                  Value: 'NUMBER_VALUE' /* required */
                },
                /* '<__string>': ... */
              }
            },
            FilterType: SYSTEM | ENDPOINT /* required */
          },
          Frequency: ONCE | HOURLY | DAILY | WEEKLY | MONTHLY | EVENT | IN_APP_EVENT,
          IsLocalTime: true || false,
          QuietTime: {
            End: 'STRING_VALUE',
            Start: 'STRING_VALUE'
          },
          Timezone: 'STRING_VALUE'
        },
        TemplateConfiguration: {
          EmailTemplate: {
            Name: 'STRING_VALUE',
            Version: 'STRING_VALUE'
          },
          InAppTemplate: {
            Name: 'STRING_VALUE',
            Version: 'STRING_VALUE'
          },
          PushTemplate: {
            Name: 'STRING_VALUE',
            Version: 'STRING_VALUE'
          },
          SMSTemplate: {
            Name: 'STRING_VALUE',
            Version: 'STRING_VALUE'
          },
          VoiceTemplate: {
            Name: 'STRING_VALUE',
            Version: 'STRING_VALUE'
          }
        },
        TreatmentDescription: 'STRING_VALUE',
        TreatmentName: 'STRING_VALUE'
      },
      /* more items */
    ],
    CustomDeliveryConfiguration: {
      DeliveryUri: 'STRING_VALUE', /* required */
      EndpointTypes: [
        PUSH | GCM | APNS | APNS_SANDBOX | APNS_VOIP | APNS_VOIP_SANDBOX | ADM | SMS | VOICE | EMAIL | BAIDU | CUSTOM | IN_APP,
        /* more items */
      ]
    },
    Description: 'STRING_VALUE',
    HoldoutPercent: 'NUMBER_VALUE',
    Hook: {
      LambdaFunctionName: 'STRING_VALUE',
      Mode: DELIVERY | FILTER,
      WebUrl: 'STRING_VALUE'
    },
    IsPaused: true || false,
    Limits: {
      Daily: 'NUMBER_VALUE',
      MaximumDuration: 'NUMBER_VALUE',
      MessagesPerSecond: 'NUMBER_VALUE',
      Session: 'NUMBER_VALUE',
      Total: 'NUMBER_VALUE'
    },
    MessageConfiguration: {
      ADMMessage: {
        Action: OPEN_APP | DEEP_LINK | URL,
        Body: 'STRING_VALUE',
        ImageIconUrl: 'STRING_VALUE',
        ImageSmallIconUrl: 'STRING_VALUE',
        ImageUrl: 'STRING_VALUE',
        JsonBody: 'STRING_VALUE',
        MediaUrl: 'STRING_VALUE',
        RawContent: 'STRING_VALUE',
        SilentPush: true || false,
        TimeToLive: 'NUMBER_VALUE',
        Title: 'STRING_VALUE',
        Url: 'STRING_VALUE'
      },
      APNSMessage: {
        Action: OPEN_APP | DEEP_LINK | URL,
        Body: 'STRING_VALUE',
        ImageIconUrl: 'STRING_VALUE',
        ImageSmallIconUrl: 'STRING_VALUE',
        ImageUrl: 'STRING_VALUE',
        JsonBody: 'STRING_VALUE',
        MediaUrl: 'STRING_VALUE',
        RawContent: 'STRING_VALUE',
        SilentPush: true || false,
        TimeToLive: 'NUMBER_VALUE',
        Title: 'STRING_VALUE',
        Url: 'STRING_VALUE'
      },
      BaiduMessage: {
        Action: OPEN_APP | DEEP_LINK | URL,
        Body: 'STRING_VALUE',
        ImageIconUrl: 'STRING_VALUE',
        ImageSmallIconUrl: 'STRING_VALUE',
        ImageUrl: 'STRING_VALUE',
        JsonBody: 'STRING_VALUE',
        MediaUrl: 'STRING_VALUE',
        RawContent: 'STRING_VALUE',
        SilentPush: true || false,
        TimeToLive: 'NUMBER_VALUE',
        Title: 'STRING_VALUE',
        Url: 'STRING_VALUE'
      },
      CustomMessage: {
        Data: 'STRING_VALUE'
      },
      DefaultMessage: {
        Action: OPEN_APP | DEEP_LINK | URL,
        Body: 'STRING_VALUE',
        ImageIconUrl: 'STRING_VALUE',
        ImageSmallIconUrl: 'STRING_VALUE',
        ImageUrl: 'STRING_VALUE',
        JsonBody: 'STRING_VALUE',
        MediaUrl: 'STRING_VALUE',
        RawContent: 'STRING_VALUE',
        SilentPush: true || false,
        TimeToLive: 'NUMBER_VALUE',
        Title: 'STRING_VALUE',
        Url: 'STRING_VALUE'
      },
      EmailMessage: {
        Body: 'STRING_VALUE',
        FromAddress: 'STRING_VALUE',
        Headers: [
          {
            Name: 'STRING_VALUE',
            Value: 'STRING_VALUE'
          },
          /* more items */
        ],
        HtmlBody: 'STRING_VALUE',
        Title: 'STRING_VALUE'
      },
      GCMMessage: {
        Action: OPEN_APP | DEEP_LINK | URL,
        Body: 'STRING_VALUE',
        ImageIconUrl: 'STRING_VALUE',
        ImageSmallIconUrl: 'STRING_VALUE',
        ImageUrl: 'STRING_VALUE',
        JsonBody: 'STRING_VALUE',
        MediaUrl: 'STRING_VALUE',
        RawContent: 'STRING_VALUE',
        SilentPush: true || false,
        TimeToLive: 'NUMBER_VALUE',
        Title: 'STRING_VALUE',
        Url: 'STRING_VALUE'
      },
      InAppMessage: {
        Body: 'STRING_VALUE',
        Content: [
          {
            BackgroundColor: 'STRING_VALUE',
            BodyConfig: {
              Alignment: LEFT | CENTER | RIGHT, /* required */
              Body: 'STRING_VALUE', /* required */
              TextColor: 'STRING_VALUE' /* required */
            },
            HeaderConfig: {
              Alignment: LEFT | CENTER | RIGHT, /* required */
              Header: 'STRING_VALUE', /* required */
              TextColor: 'STRING_VALUE' /* required */
            },
            ImageUrl: 'STRING_VALUE',
            PrimaryBtn: {
              Android: {
                ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
                Link: 'STRING_VALUE'
              },
              DefaultConfig: {
                ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
                Text: 'STRING_VALUE', /* required */
                BackgroundColor: 'STRING_VALUE',
                BorderRadius: 'NUMBER_VALUE',
                Link: 'STRING_VALUE',
                TextColor: 'STRING_VALUE'
              },
              IOS: {
                ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
                Link: 'STRING_VALUE'
              },
              Web: {
                ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
                Link: 'STRING_VALUE'
              }
            },
            SecondaryBtn: {
              Android: {
                ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
                Link: 'STRING_VALUE'
              },
              DefaultConfig: {
                ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
                Text: 'STRING_VALUE', /* required */
                BackgroundColor: 'STRING_VALUE',
                BorderRadius: 'NUMBER_VALUE',
                Link: 'STRING_VALUE',
                TextColor: 'STRING_VALUE'
              },
              IOS: {
                ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
                Link: 'STRING_VALUE'
              },
              Web: {
                ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
                Link: 'STRING_VALUE'
              }
            }
          },
          /* more items */
        ],
        CustomConfig: {
          '<__string>': 'STRING_VALUE',
          /* '<__string>': ... */
        },
        Layout: BOTTOM_BANNER | TOP_BANNER | OVERLAYS | MOBILE_FEED | MIDDLE_BANNER | CAROUSEL
      },
      SMSMessage: {
        Body: 'STRING_VALUE',
        EntityId: 'STRING_VALUE',
        MessageType: TRANSACTIONAL | PROMOTIONAL,
        OriginationNumber: 'STRING_VALUE',
        SenderId: 'STRING_VALUE',
        TemplateId: 'STRING_VALUE'
      }
    },
    Name: 'STRING_VALUE',
    Priority: 'NUMBER_VALUE',
    Schedule: {
      StartTime: 'STRING_VALUE', /* required */
      EndTime: 'STRING_VALUE',
      EventFilter: {
        Dimensions: { /* required */
          Attributes: {
            '<__string>': {
              Values: [ /* required */
                'STRING_VALUE',
                /* more items */
              ],
              AttributeType: INCLUSIVE | EXCLUSIVE | CONTAINS | BEFORE | AFTER | ON | BETWEEN
            },
            /* '<__string>': ... */
          },
          EventType: {
            Values: [ /* required */
              'STRING_VALUE',
              /* more items */
            ],
            DimensionType: INCLUSIVE | EXCLUSIVE
          },
          Metrics: {
            '<__string>': {
              ComparisonOperator: 'STRING_VALUE', /* required */
              Value: 'NUMBER_VALUE' /* required */
            },
            /* '<__string>': ... */
          }
        },
        FilterType: SYSTEM | ENDPOINT /* required */
      },
      Frequency: ONCE | HOURLY | DAILY | WEEKLY | MONTHLY | EVENT | IN_APP_EVENT,
      IsLocalTime: true || false,
      QuietTime: {
        End: 'STRING_VALUE',
        Start: 'STRING_VALUE'
      },
      Timezone: 'STRING_VALUE'
    },
    SegmentId: 'STRING_VALUE',
    SegmentVersion: 'NUMBER_VALUE',
    TemplateConfiguration: {
      EmailTemplate: {
        Name: 'STRING_VALUE',
        Version: 'STRING_VALUE'
      },
      InAppTemplate: {
        Name: 'STRING_VALUE',
        Version: 'STRING_VALUE'
      },
      PushTemplate: {
        Name: 'STRING_VALUE',
        Version: 'STRING_VALUE'
      },
      SMSTemplate: {
        Name: 'STRING_VALUE',
        Version: 'STRING_VALUE'
      },
      VoiceTemplate: {
        Name: 'STRING_VALUE',
        Version: 'STRING_VALUE'
      }
    },
    TreatmentDescription: 'STRING_VALUE',
    TreatmentName: 'STRING_VALUE',
    tags: {
      '<__string>': 'STRING_VALUE',
      /* '<__string>': ... */
    }
  }
};
pinpoint.updateCampaign(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • CampaignId — (String)

      The unique identifier for the campaign.

    • WriteCampaignRequest — (map)

      Specifies the configuration and other settings for a campaign.

      • AdditionalTreatments — (Array<map>)

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

        • CustomDeliveryConfiguration — (map)

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

          • DeliveryUrirequired — (String)

            The destination to send the campaign or treatment to. This value can be one of the following:

            • The name or Amazon Resource Name (ARN) of an AWS Lambda function to invoke to handle delivery of the campaign or treatment.

            • The URL for a web application or service that supports HTTPS and can receive the message. The URL has to be a full URL, including the HTTPS protocol.

          • EndpointTypes — (Array<String>)

            The types of endpoints to send the campaign or treatment to. Each valid value maps to a type of channel that you can associate with an endpoint by using the ChannelType property of an endpoint.

        • MessageConfiguration — (map)

          The message configuration settings for the treatment.

          • ADMMessage — (map)

            The message that the campaign sends through the ADM (Amazon Device Messaging) channel. If specified, this message overrides the default message.

            • Action — (String)

              The action to occur if a recipient taps the push notification. Valid values are:

              • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

              • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

              • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

              Possible values include:
              • "OPEN_APP"
              • "DEEP_LINK"
              • "URL"
            • Body — (String)

              The body of the notification message. The maximum number of characters is 200.

            • ImageIconUrl — (String)

              The URL of the image to display as the push-notification icon, such as the icon for the app.

            • ImageSmallIconUrl — (String)

              The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

            • ImageUrl — (String)

              The URL of an image to display in the push notification.

            • JsonBody — (String)

              The JSON payload to use for a silent push notification.

            • MediaUrl — (String)

              The URL of the image or video to display in the push notification.

            • RawContent — (String)

              The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

            • SilentPush — (Boolean)

              Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

            • TimeToLive — (Integer)

              The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

              This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

            • Title — (String)

              The title to display above the notification message on a recipient's device.

            • Url — (String)

              The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

          • APNSMessage — (map)

            The message that the campaign sends through the APNs (Apple Push Notification service) channel. If specified, this message overrides the default message.

            • Action — (String)

              The action to occur if a recipient taps the push notification. Valid values are:

              • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

              • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

              • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

              Possible values include:
              • "OPEN_APP"
              • "DEEP_LINK"
              • "URL"
            • Body — (String)

              The body of the notification message. The maximum number of characters is 200.

            • ImageIconUrl — (String)

              The URL of the image to display as the push-notification icon, such as the icon for the app.

            • ImageSmallIconUrl — (String)

              The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

            • ImageUrl — (String)

              The URL of an image to display in the push notification.

            • JsonBody — (String)

              The JSON payload to use for a silent push notification.

            • MediaUrl — (String)

              The URL of the image or video to display in the push notification.

            • RawContent — (String)

              The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

            • SilentPush — (Boolean)

              Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

            • TimeToLive — (Integer)

              The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

              This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

            • Title — (String)

              The title to display above the notification message on a recipient's device.

            • Url — (String)

              The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

          • BaiduMessage — (map)

            The message that the campaign sends through the Baidu (Baidu Cloud Push) channel. If specified, this message overrides the default message.

            • Action — (String)

              The action to occur if a recipient taps the push notification. Valid values are:

              • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

              • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

              • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

              Possible values include:
              • "OPEN_APP"
              • "DEEP_LINK"
              • "URL"
            • Body — (String)

              The body of the notification message. The maximum number of characters is 200.

            • ImageIconUrl — (String)

              The URL of the image to display as the push-notification icon, such as the icon for the app.

            • ImageSmallIconUrl — (String)

              The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

            • ImageUrl — (String)

              The URL of an image to display in the push notification.

            • JsonBody — (String)

              The JSON payload to use for a silent push notification.

            • MediaUrl — (String)

              The URL of the image or video to display in the push notification.

            • RawContent — (String)

              The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

            • SilentPush — (Boolean)

              Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

            • TimeToLive — (Integer)

              The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

              This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

            • Title — (String)

              The title to display above the notification message on a recipient's device.

            • Url — (String)

              The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

          • CustomMessage — (map)

            The message that the campaign sends through a custom channel, as specified by the delivery configuration (CustomDeliveryConfiguration) settings for the campaign. If specified, this message overrides the default message.

            • Data — (String)

              The raw, JSON-formatted string to use as the payload for the message. The maximum size is 5 KB.

          • DefaultMessage — (map)

            The default message that the campaign sends through all the channels that are configured for the campaign.

            • Action — (String)

              The action to occur if a recipient taps the push notification. Valid values are:

              • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

              • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

              • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

              Possible values include:
              • "OPEN_APP"
              • "DEEP_LINK"
              • "URL"
            • Body — (String)

              The body of the notification message. The maximum number of characters is 200.

            • ImageIconUrl — (String)

              The URL of the image to display as the push-notification icon, such as the icon for the app.

            • ImageSmallIconUrl — (String)

              The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

            • ImageUrl — (String)

              The URL of an image to display in the push notification.

            • JsonBody — (String)

              The JSON payload to use for a silent push notification.

            • MediaUrl — (String)

              The URL of the image or video to display in the push notification.

            • RawContent — (String)

              The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

            • SilentPush — (Boolean)

              Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

            • TimeToLive — (Integer)

              The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

              This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

            • Title — (String)

              The title to display above the notification message on a recipient's device.

            • Url — (String)

              The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

          • EmailMessage — (map)

            The message that the campaign sends through the email channel. If specified, this message overrides the default message.

            • Body — (String)

              The body of the email for recipients whose email clients don't render HTML content.

            • FromAddress — (String)

              The verified email address to send the email from. The default address is the FromAddress specified for the email channel for the application.

            • Headers — (Array<map>)

              The list of MessageHeaders for the email. You can have up to 15 MessageHeaders for each email.

              • Name — (String)

                The name of the message header. The header name can contain up to 126 characters.

              • Value — (String)

                The value of the message header. The header value can contain up to 870 characters, including the length of any rendered attributes. For example if you add the {CreationDate} attribute, it renders as YYYY-MM-DDTHH:MM:SS.SSSZ and is 24 characters in length.

            • HtmlBody — (String)

              The body of the email, in HTML format, for recipients whose email clients render HTML content.

            • Title — (String)

              The subject line, or title, of the email.

          • GCMMessage — (map)

            The message that the campaign sends through the GCM channel, which enables Amazon Pinpoint to send push notifications through the Firebase Cloud Messaging (FCM), formerly Google Cloud Messaging (GCM), service. If specified, this message overrides the default message.

            • Action — (String)

              The action to occur if a recipient taps the push notification. Valid values are:

              • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

              • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

              • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

              Possible values include:
              • "OPEN_APP"
              • "DEEP_LINK"
              • "URL"
            • Body — (String)

              The body of the notification message. The maximum number of characters is 200.

            • ImageIconUrl — (String)

              The URL of the image to display as the push-notification icon, such as the icon for the app.

            • ImageSmallIconUrl — (String)

              The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

            • ImageUrl — (String)

              The URL of an image to display in the push notification.

            • JsonBody — (String)

              The JSON payload to use for a silent push notification.

            • MediaUrl — (String)

              The URL of the image or video to display in the push notification.

            • RawContent — (String)

              The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

            • SilentPush — (Boolean)

              Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

            • TimeToLive — (Integer)

              The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

              This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

            • Title — (String)

              The title to display above the notification message on a recipient's device.

            • Url — (String)

              The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

          • SMSMessage — (map)

            The message that the campaign sends through the SMS channel. If specified, this message overrides the default message.

            • Body — (String)

              The body of the SMS message.

            • MessageType — (String)

              The SMS message type. Valid values are TRANSACTIONAL (for messages that are critical or time-sensitive, such as a one-time passwords) and PROMOTIONAL (for messsages that aren't critical or time-sensitive, such as marketing messages).

              Possible values include:
              • "TRANSACTIONAL"
              • "PROMOTIONAL"
            • OriginationNumber — (String)

              The long code to send the SMS message from. This value should be one of the dedicated long codes that's assigned to your AWS account. Although it isn't required, we recommend that you specify the long code using an E.164 format to ensure prompt and accurate delivery of the message. For example, +12065550100.

            • SenderId — (String)

              The sender ID to display on recipients' devices when they receive the SMS message.

            • EntityId — (String)

              The entity ID or Principal Entity (PE) id received from the regulatory body for sending SMS in your country.

            • TemplateId — (String)

              The template ID received from the regulatory body for sending SMS in your country.

          • InAppMessage — (map)

            The in-app message configuration.

            • Body — (String)

              The message body of the notification, the email body or the text message.

            • Content — (Array<map>)

              In-app message content.

              • BackgroundColor — (String)

                The background color for the message.

              • BodyConfig — (map)

                The configuration for the message body.

                • Alignmentrequired — (String)

                  The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

                  Possible values include:
                  • "LEFT"
                  • "CENTER"
                  • "RIGHT"
                • Bodyrequired — (String)

                  Message Body.

                • TextColorrequired — (String)

                  The text color.

              • HeaderConfig — (map)

                The configuration for the message header.

                • Alignmentrequired — (String)

                  The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

                  Possible values include:
                  • "LEFT"
                  • "CENTER"
                  • "RIGHT"
                • Headerrequired — (String)

                  Message Header.

                • TextColorrequired — (String)

                  The text color.

              • ImageUrl — (String)

                The image url for the background of message.

              • PrimaryBtn — (map)

                The first button inside the message.

                • Android — (map)

                  Default button content.

                  • ButtonActionrequired — (String)

                    Action triggered by the button.

                    Possible values include:
                    • "LINK"
                    • "DEEP_LINK"
                    • "CLOSE"
                  • Link — (String)

                    Button destination.

                • DefaultConfig — (map)

                  Default button content.

                  • BackgroundColor — (String)

                    The background color of the button.

                  • BorderRadius — (Integer)

                    The border radius of the button.

                  • ButtonActionrequired — (String)

                    Action triggered by the button.

                    Possible values include:
                    • "LINK"
                    • "DEEP_LINK"
                    • "CLOSE"
                  • Link — (String)

                    Button destination.

                  • Textrequired — (String)

                    Button text.

                  • TextColor — (String)

                    The text color of the button.

                • IOS — (map)

                  Default button content.

                  • ButtonActionrequired — (String)

                    Action triggered by the button.

                    Possible values include:
                    • "LINK"
                    • "DEEP_LINK"
                    • "CLOSE"
                  • Link — (String)

                    Button destination.

                • Web — (map)

                  Default button content.

                  • ButtonActionrequired — (String)

                    Action triggered by the button.

                    Possible values include:
                    • "LINK"
                    • "DEEP_LINK"
                    • "CLOSE"
                  • Link — (String)

                    Button destination.

              • SecondaryBtn — (map)

                The second button inside message.

                • Android — (map)

                  Default button content.

                  • ButtonActionrequired — (String)

                    Action triggered by the button.

                    Possible values include:
                    • "LINK"
                    • "DEEP_LINK"
                    • "CLOSE"
                  • Link — (String)

                    Button destination.

                • DefaultConfig — (map)

                  Default button content.

                  • BackgroundColor — (String)

                    The background color of the button.

                  • BorderRadius — (Integer)

                    The border radius of the button.

                  • ButtonActionrequired — (String)

                    Action triggered by the button.

                    Possible values include:
                    • "LINK"
                    • "DEEP_LINK"
                    • "CLOSE"
                  • Link — (String)

                    Button destination.

                  • Textrequired — (String)

                    Button text.

                  • TextColor — (String)

                    The text color of the button.

                • IOS — (map)

                  Default button content.

                  • ButtonActionrequired — (String)

                    Action triggered by the button.

                    Possible values include:
                    • "LINK"
                    • "DEEP_LINK"
                    • "CLOSE"
                  • Link — (String)

                    Button destination.

                • Web — (map)

                  Default button content.

                  • ButtonActionrequired — (String)

                    Action triggered by the button.

                    Possible values include:
                    • "LINK"
                    • "DEEP_LINK"
                    • "CLOSE"
                  • Link — (String)

                    Button destination.

            • CustomConfig — (map<String>)

              Custom config to be sent to client.

            • Layout — (String)

              In-app message layout.

              Possible values include:
              • "BOTTOM_BANNER"
              • "TOP_BANNER"
              • "OVERLAYS"
              • "MOBILE_FEED"
              • "MIDDLE_BANNER"
              • "CAROUSEL"
        • Schedule — (map)

          The schedule settings for the treatment.

          • EndTime — (String)

            The scheduled time, in ISO 8601 format, when the campaign ended or will end.

          • EventFilter — (map)

            The type of event that causes the campaign to be sent, if the value of the Frequency property is EVENT.

            • Dimensionsrequired — (map)

              The dimension settings of the event filter for the campaign.

              • Attributes — (map<map>)

                One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                • AttributeType — (String)

                  The type of segment dimension to use. Valid values are:

                  • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                  • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                  • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                  • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                  • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                  • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                  • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                  • Possible values include:
                    • "INCLUSIVE"
                    • "EXCLUSIVE"
                    • "CONTAINS"
                    • "BEFORE"
                    • "AFTER"
                    • "ON"
                    • "BETWEEN"
                  • Valuesrequired — (Array<String>)

                    The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                • EventType — (map)

                  The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                  • DimensionType — (String)

                    The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                    Possible values include:
                    • "INCLUSIVE"
                    • "EXCLUSIVE"
                  • Valuesrequired — (Array<String>)

                    The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                • Metrics — (map<map>)

                  One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                  • ComparisonOperatorrequired — (String)

                    The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                  • Valuerequired — (Float)

                    The value to compare.

              • FilterTyperequired — (String)

                The type of event that causes the campaign to be sent. Valid values are: SYSTEM, sends the campaign when a system event occurs; and, ENDPOINT, sends the campaign when an endpoint event (Events resource) occurs.

                Possible values include:
                • "SYSTEM"
                • "ENDPOINT"
            • Frequency — (String)

              Specifies how often the campaign is sent or whether the campaign is sent in response to a specific event.

              Possible values include:
              • "ONCE"
              • "HOURLY"
              • "DAILY"
              • "WEEKLY"
              • "MONTHLY"
              • "EVENT"
              • "IN_APP_EVENT"
            • IsLocalTime — (Boolean)

              Specifies whether the start and end times for the campaign schedule use each recipient's local time. To base the schedule on each recipient's local time, set this value to true.

            • QuietTime — (map)

              The default quiet time for the campaign. Quiet time is a specific time range when a campaign doesn't send messages to endpoints, if all the following conditions are met:

              • The EndpointDemographic.Timezone property of the endpoint is set to a valid value.

              • The current time in the endpoint's time zone is later than or equal to the time specified by the QuietTime.Start property for the campaign.

              • The current time in the endpoint's time zone is earlier than or equal to the time specified by the QuietTime.End property for the campaign.

              If any of the preceding conditions isn't met, the endpoint will receive messages from the campaign, even if quiet time is enabled.

              • End — (String)

                The specific time when quiet time ends. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

              • Start — (String)

                The specific time when quiet time begins. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

            • StartTimerequired — (String)

              The scheduled time when the campaign began or will begin. Valid values are: IMMEDIATE, to start the campaign immediately; or, a specific time in ISO 8601 format.

            • Timezone — (String)

              The starting UTC offset for the campaign schedule, if the value of the IsLocalTime property is true. Valid values are: UTC, UTC+01, UTC+02, UTC+03, UTC+03:30, UTC+04, UTC+04:30, UTC+05, UTC+05:30, UTC+05:45, UTC+06, UTC+06:30, UTC+07, UTC+08, UTC+09, UTC+09:30, UTC+10, UTC+10:30, UTC+11, UTC+12, UTC+13, UTC-02, UTC-03, UTC-04, UTC-05, UTC-06, UTC-07, UTC-08, UTC-09, UTC-10, and UTC-11.

          • SizePercentrequired — (Integer)

            The allocated percentage of users (segment members) to send the treatment to.

          • TemplateConfiguration — (map)

            The message template to use for the treatment.

            • EmailTemplate — (map)

              The email template to use for the message.

              • Name — (String)

                The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

              • Version — (String)

                The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

            • PushTemplate — (map)

              The push notification template to use for the message.

              • Name — (String)

                The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

              • Version — (String)

                The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

            • SMSTemplate — (map)

              The SMS template to use for the message.

              • Name — (String)

                The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

              • Version — (String)

                The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

            • VoiceTemplate — (map)

              The voice template to use for the message. This object isn't supported for campaigns.

              • Name — (String)

                The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

              • Version — (String)

                The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

            • InAppTemplate — (map)

              The InApp template to use for the message. The InApp template object is not supported for SendMessages.

              • Name — (String)

                The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

              • Version — (String)

                The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

          • TreatmentDescription — (String)

            A custom description of the treatment.

          • TreatmentName — (String)

            A custom name for the treatment.

        • CustomDeliveryConfiguration — (map)

          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.

          • DeliveryUrirequired — (String)

            The destination to send the campaign or treatment to. This value can be one of the following:

            • The name or Amazon Resource Name (ARN) of an AWS Lambda function to invoke to handle delivery of the campaign or treatment.

            • The URL for a web application or service that supports HTTPS and can receive the message. The URL has to be a full URL, including the HTTPS protocol.

          • EndpointTypes — (Array<String>)

            The types of endpoints to send the campaign or treatment to. Each valid value maps to a type of channel that you can associate with an endpoint by using the ChannelType property of an endpoint.

        • Description — (String)

          A custom description of the campaign.

        • HoldoutPercent — (Integer)

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

        • Hook — (map)

          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.

          • LambdaFunctionName — (String)

            The name or Amazon Resource Name (ARN) of the AWS Lambda function that Amazon Pinpoint invokes to customize a segment for a campaign.

          • Mode — (String)

            The mode that Amazon Pinpoint uses to invoke the AWS Lambda function. Possible values are:

            • FILTER - Invoke the function to customize the segment that's used by a campaign.

            • DELIVERY - (Deprecated) Previously, invoked the function to send a campaign through a custom channel. This functionality is not supported anymore. To send a campaign through a custom channel, use the CustomDeliveryConfiguration and CampaignCustomMessage objects of the campaign.

            Possible values include:
            • "DELIVERY"
            • "FILTER"
          • WebUrl — (String)

            The web URL that Amazon Pinpoint calls to invoke the AWS Lambda function over HTTPS.

        • IsPaused — (Boolean)

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

        • Limits — (map)

          The messaging limits for the campaign.

          • Daily — (Integer)

            The maximum number of messages that a campaign can send to a single endpoint during a 24-hour period. For an application, this value specifies the default limit for the number of messages that campaigns and journeys can send to a single endpoint during a 24-hour period. The maximum value is 100.

          • MaximumDuration — (Integer)

            The maximum amount of time, in seconds, that a campaign can attempt to deliver a message after the scheduled start time for the campaign. The minimum value is 60 seconds.

          • MessagesPerSecond — (Integer)

            The maximum number of messages that a campaign can send each second. For an application, this value specifies the default limit for the number of messages that campaigns can send each second. The minimum value is 1. The maximum value is 20,000.

          • Total — (Integer)

            The maximum number of messages that a campaign can send to a single endpoint during the course of the campaign. If a campaign recurs, this setting applies to all runs of the campaign. The maximum value is 100.

          • Session — (Integer)

            The maximum total number of messages that the campaign can send per user session.

        • MessageConfiguration — (map)

          The message configuration settings for the campaign.

          • ADMMessage — (map)

            The message that the campaign sends through the ADM (Amazon Device Messaging) channel. If specified, this message overrides the default message.

            • Action — (String)

              The action to occur if a recipient taps the push notification. Valid values are:

              • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

              • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

              • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

              Possible values include:
              • "OPEN_APP"
              • "DEEP_LINK"
              • "URL"
            • Body — (String)

              The body of the notification message. The maximum number of characters is 200.

            • ImageIconUrl — (String)

              The URL of the image to display as the push-notification icon, such as the icon for the app.

            • ImageSmallIconUrl — (String)

              The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

            • ImageUrl — (String)

              The URL of an image to display in the push notification.

            • JsonBody — (String)

              The JSON payload to use for a silent push notification.

            • MediaUrl — (String)

              The URL of the image or video to display in the push notification.

            • RawContent — (String)

              The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

            • SilentPush — (Boolean)

              Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

            • TimeToLive — (Integer)

              The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

              This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

            • Title — (String)

              The title to display above the notification message on a recipient's device.

            • Url — (String)

              The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

          • APNSMessage — (map)

            The message that the campaign sends through the APNs (Apple Push Notification service) channel. If specified, this message overrides the default message.

            • Action — (String)

              The action to occur if a recipient taps the push notification. Valid values are:

              • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

              • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

              • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

              Possible values include:
              • "OPEN_APP"
              • "DEEP_LINK"
              • "URL"
            • Body — (String)

              The body of the notification message. The maximum number of characters is 200.

            • ImageIconUrl — (String)

              The URL of the image to display as the push-notification icon, such as the icon for the app.

            • ImageSmallIconUrl — (String)

              The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

            • ImageUrl — (String)

              The URL of an image to display in the push notification.

            • JsonBody — (String)

              The JSON payload to use for a silent push notification.

            • MediaUrl — (String)

              The URL of the image or video to display in the push notification.

            • RawContent — (String)

              The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

            • SilentPush — (Boolean)

              Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

            • TimeToLive — (Integer)

              The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

              This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

            • Title — (String)

              The title to display above the notification message on a recipient's device.

            • Url — (String)

              The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

          • BaiduMessage — (map)

            The message that the campaign sends through the Baidu (Baidu Cloud Push) channel. If specified, this message overrides the default message.

            • Action — (String)

              The action to occur if a recipient taps the push notification. Valid values are:

              • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

              • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

              • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

              Possible values include:
              • "OPEN_APP"
              • "DEEP_LINK"
              • "URL"
            • Body — (String)

              The body of the notification message. The maximum number of characters is 200.

            • ImageIconUrl — (String)

              The URL of the image to display as the push-notification icon, such as the icon for the app.

            • ImageSmallIconUrl — (String)

              The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

            • ImageUrl — (String)

              The URL of an image to display in the push notification.

            • JsonBody — (String)

              The JSON payload to use for a silent push notification.

            • MediaUrl — (String)

              The URL of the image or video to display in the push notification.

            • RawContent — (String)

              The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

            • SilentPush — (Boolean)

              Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

            • TimeToLive — (Integer)

              The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

              This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

            • Title — (String)

              The title to display above the notification message on a recipient's device.

            • Url — (String)

              The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

          • CustomMessage — (map)

            The message that the campaign sends through a custom channel, as specified by the delivery configuration (CustomDeliveryConfiguration) settings for the campaign. If specified, this message overrides the default message.

            • Data — (String)

              The raw, JSON-formatted string to use as the payload for the message. The maximum size is 5 KB.

          • DefaultMessage — (map)

            The default message that the campaign sends through all the channels that are configured for the campaign.

            • Action — (String)

              The action to occur if a recipient taps the push notification. Valid values are:

              • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

              • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

              • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

              Possible values include:
              • "OPEN_APP"
              • "DEEP_LINK"
              • "URL"
            • Body — (String)

              The body of the notification message. The maximum number of characters is 200.

            • ImageIconUrl — (String)

              The URL of the image to display as the push-notification icon, such as the icon for the app.

            • ImageSmallIconUrl — (String)

              The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

            • ImageUrl — (String)

              The URL of an image to display in the push notification.

            • JsonBody — (String)

              The JSON payload to use for a silent push notification.

            • MediaUrl — (String)

              The URL of the image or video to display in the push notification.

            • RawContent — (String)

              The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

            • SilentPush — (Boolean)

              Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

            • TimeToLive — (Integer)

              The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

              This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

            • Title — (String)

              The title to display above the notification message on a recipient's device.

            • Url — (String)

              The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

          • EmailMessage — (map)

            The message that the campaign sends through the email channel. If specified, this message overrides the default message.

            • Body — (String)

              The body of the email for recipients whose email clients don't render HTML content.

            • FromAddress — (String)

              The verified email address to send the email from. The default address is the FromAddress specified for the email channel for the application.

            • Headers — (Array<map>)

              The list of MessageHeaders for the email. You can have up to 15 MessageHeaders for each email.

              • Name — (String)

                The name of the message header. The header name can contain up to 126 characters.

              • Value — (String)

                The value of the message header. The header value can contain up to 870 characters, including the length of any rendered attributes. For example if you add the {CreationDate} attribute, it renders as YYYY-MM-DDTHH:MM:SS.SSSZ and is 24 characters in length.

            • HtmlBody — (String)

              The body of the email, in HTML format, for recipients whose email clients render HTML content.

            • Title — (String)

              The subject line, or title, of the email.

          • GCMMessage — (map)

            The message that the campaign sends through the GCM channel, which enables Amazon Pinpoint to send push notifications through the Firebase Cloud Messaging (FCM), formerly Google Cloud Messaging (GCM), service. If specified, this message overrides the default message.

            • Action — (String)

              The action to occur if a recipient taps the push notification. Valid values are:

              • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

              • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

              • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

              Possible values include:
              • "OPEN_APP"
              • "DEEP_LINK"
              • "URL"
            • Body — (String)

              The body of the notification message. The maximum number of characters is 200.

            • ImageIconUrl — (String)

              The URL of the image to display as the push-notification icon, such as the icon for the app.

            • ImageSmallIconUrl — (String)

              The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

            • ImageUrl — (String)

              The URL of an image to display in the push notification.

            • JsonBody — (String)

              The JSON payload to use for a silent push notification.

            • MediaUrl — (String)

              The URL of the image or video to display in the push notification.

            • RawContent — (String)

              The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

            • SilentPush — (Boolean)

              Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

            • TimeToLive — (Integer)

              The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

              This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

            • Title — (String)

              The title to display above the notification message on a recipient's device.

            • Url — (String)

              The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

          • SMSMessage — (map)

            The message that the campaign sends through the SMS channel. If specified, this message overrides the default message.

            • Body — (String)

              The body of the SMS message.

            • MessageType — (String)

              The SMS message type. Valid values are TRANSACTIONAL (for messages that are critical or time-sensitive, such as a one-time passwords) and PROMOTIONAL (for messsages that aren't critical or time-sensitive, such as marketing messages).

              Possible values include:
              • "TRANSACTIONAL"
              • "PROMOTIONAL"
            • OriginationNumber — (String)

              The long code to send the SMS message from. This value should be one of the dedicated long codes that's assigned to your AWS account. Although it isn't required, we recommend that you specify the long code using an E.164 format to ensure prompt and accurate delivery of the message. For example, +12065550100.

            • SenderId — (String)

              The sender ID to display on recipients' devices when they receive the SMS message.

            • EntityId — (String)

              The entity ID or Principal Entity (PE) id received from the regulatory body for sending SMS in your country.

            • TemplateId — (String)

              The template ID received from the regulatory body for sending SMS in your country.

          • InAppMessage — (map)

            The in-app message configuration.

            • Body — (String)

              The message body of the notification, the email body or the text message.

            • Content — (Array<map>)

              In-app message content.

              • BackgroundColor — (String)

                The background color for the message.

              • BodyConfig — (map)

                The configuration for the message body.

                • Alignmentrequired — (String)

                  The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

                  Possible values include:
                  • "LEFT"
                  • "CENTER"
                  • "RIGHT"
                • Bodyrequired — (String)

                  Message Body.

                • TextColorrequired — (String)

                  The text color.

              • HeaderConfig — (map)

                The configuration for the message header.

                • Alignmentrequired — (String)

                  The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

                  Possible values include:
                  • "LEFT"
                  • "CENTER"
                  • "RIGHT"
                • Headerrequired — (String)

                  Message Header.

                • TextColorrequired — (String)

                  The text color.

              • ImageUrl — (String)

                The image url for the background of message.

              • PrimaryBtn — (map)

                The first button inside the message.

                • Android — (map)

                  Default button content.

                  • ButtonActionrequired — (String)

                    Action triggered by the button.

                    Possible values include:
                    • "LINK"
                    • "DEEP_LINK"
                    • "CLOSE"
                  • Link — (String)

                    Button destination.

                • DefaultConfig — (map)

                  Default button content.

                  • BackgroundColor — (String)

                    The background color of the button.

                  • BorderRadius — (Integer)

                    The border radius of the button.

                  • ButtonActionrequired — (String)

                    Action triggered by the button.

                    Possible values include:
                    • "LINK"
                    • "DEEP_LINK"
                    • "CLOSE"
                  • Link — (String)

                    Button destination.

                  • Textrequired — (String)

                    Button text.

                  • TextColor — (String)

                    The text color of the button.

                • IOS — (map)

                  Default button content.

                  • ButtonActionrequired — (String)

                    Action triggered by the button.

                    Possible values include:
                    • "LINK"
                    • "DEEP_LINK"
                    • "CLOSE"
                  • Link — (String)

                    Button destination.

                • Web — (map)

                  Default button content.

                  • ButtonActionrequired — (String)

                    Action triggered by the button.

                    Possible values include:
                    • "LINK"
                    • "DEEP_LINK"
                    • "CLOSE"
                  • Link — (String)

                    Button destination.

              • SecondaryBtn — (map)

                The second button inside message.

                • Android — (map)

                  Default button content.

                  • ButtonActionrequired — (String)

                    Action triggered by the button.

                    Possible values include:
                    • "LINK"
                    • "DEEP_LINK"
                    • "CLOSE"
                  • Link — (String)

                    Button destination.

                • DefaultConfig — (map)

                  Default button content.

                  • BackgroundColor — (String)

                    The background color of the button.

                  • BorderRadius — (Integer)

                    The border radius of the button.

                  • ButtonActionrequired — (String)

                    Action triggered by the button.

                    Possible values include:
                    • "LINK"
                    • "DEEP_LINK"
                    • "CLOSE"
                  • Link — (String)

                    Button destination.

                  • Textrequired — (String)

                    Button text.

                  • TextColor — (String)

                    The text color of the button.

                • IOS — (map)

                  Default button content.

                  • ButtonActionrequired — (String)

                    Action triggered by the button.

                    Possible values include:
                    • "LINK"
                    • "DEEP_LINK"
                    • "CLOSE"
                  • Link — (String)

                    Button destination.

                • Web — (map)

                  Default button content.

                  • ButtonActionrequired — (String)

                    Action triggered by the button.

                    Possible values include:
                    • "LINK"
                    • "DEEP_LINK"
                    • "CLOSE"
                  • Link — (String)

                    Button destination.

            • CustomConfig — (map<String>)

              Custom config to be sent to client.

            • Layout — (String)

              In-app message layout.

              Possible values include:
              • "BOTTOM_BANNER"
              • "TOP_BANNER"
              • "OVERLAYS"
              • "MOBILE_FEED"
              • "MIDDLE_BANNER"
              • "CAROUSEL"
        • Name — (String)

          A custom name for the campaign.

        • Schedule — (map)

          The schedule settings for the campaign.

          • EndTime — (String)

            The scheduled time, in ISO 8601 format, when the campaign ended or will end.

          • EventFilter — (map)

            The type of event that causes the campaign to be sent, if the value of the Frequency property is EVENT.

            • Dimensionsrequired — (map)

              The dimension settings of the event filter for the campaign.

              • Attributes — (map<map>)

                One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                • AttributeType — (String)

                  The type of segment dimension to use. Valid values are:

                  • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                  • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                  • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                  • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                  • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                  • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                  • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                  • Possible values include:
                    • "INCLUSIVE"
                    • "EXCLUSIVE"
                    • "CONTAINS"
                    • "BEFORE"
                    • "AFTER"
                    • "ON"
                    • "BETWEEN"
                  • Valuesrequired — (Array<String>)

                    The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                • EventType — (map)

                  The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                  • DimensionType — (String)

                    The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                    Possible values include:
                    • "INCLUSIVE"
                    • "EXCLUSIVE"
                  • Valuesrequired — (Array<String>)

                    The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                • Metrics — (map<map>)

                  One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                  • ComparisonOperatorrequired — (String)

                    The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                  • Valuerequired — (Float)

                    The value to compare.

              • FilterTyperequired — (String)

                The type of event that causes the campaign to be sent. Valid values are: SYSTEM, sends the campaign when a system event occurs; and, ENDPOINT, sends the campaign when an endpoint event (Events resource) occurs.

                Possible values include:
                • "SYSTEM"
                • "ENDPOINT"
            • Frequency — (String)

              Specifies how often the campaign is sent or whether the campaign is sent in response to a specific event.

              Possible values include:
              • "ONCE"
              • "HOURLY"
              • "DAILY"
              • "WEEKLY"
              • "MONTHLY"
              • "EVENT"
              • "IN_APP_EVENT"
            • IsLocalTime — (Boolean)

              Specifies whether the start and end times for the campaign schedule use each recipient's local time. To base the schedule on each recipient's local time, set this value to true.

            • QuietTime — (map)

              The default quiet time for the campaign. Quiet time is a specific time range when a campaign doesn't send messages to endpoints, if all the following conditions are met:

              • The EndpointDemographic.Timezone property of the endpoint is set to a valid value.

              • The current time in the endpoint's time zone is later than or equal to the time specified by the QuietTime.Start property for the campaign.

              • The current time in the endpoint's time zone is earlier than or equal to the time specified by the QuietTime.End property for the campaign.

              If any of the preceding conditions isn't met, the endpoint will receive messages from the campaign, even if quiet time is enabled.

              • End — (String)

                The specific time when quiet time ends. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

              • Start — (String)

                The specific time when quiet time begins. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

            • StartTimerequired — (String)

              The scheduled time when the campaign began or will begin. Valid values are: IMMEDIATE, to start the campaign immediately; or, a specific time in ISO 8601 format.

            • Timezone — (String)

              The starting UTC offset for the campaign schedule, if the value of the IsLocalTime property is true. Valid values are: UTC, UTC+01, UTC+02, UTC+03, UTC+03:30, UTC+04, UTC+04:30, UTC+05, UTC+05:30, UTC+05:45, UTC+06, UTC+06:30, UTC+07, UTC+08, UTC+09, UTC+09:30, UTC+10, UTC+10:30, UTC+11, UTC+12, UTC+13, UTC-02, UTC-03, UTC-04, UTC-05, UTC-06, UTC-07, UTC-08, UTC-09, UTC-10, and UTC-11.

          • SegmentId — (String)

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

          • SegmentVersion — (Integer)

            The version of the segment to associate with the campaign.

          • tags — (map<String>)
            Note: As of 22-05-2023 tags has been deprecated for update operations. After this date any value in tags is not processed and an error code is not returned. To manage tags we recommend using either Tags in the API Reference for Amazon Pinpoint, resourcegroupstaggingapi commands in the AWS Command Line Interface Documentation or resourcegroupstaggingapi in the AWS SDK.

            (Deprecated) 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.

          • TemplateConfiguration — (map)

            The message template to use for the campaign.

            • EmailTemplate — (map)

              The email template to use for the message.

              • Name — (String)

                The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

              • Version — (String)

                The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

            • PushTemplate — (map)

              The push notification template to use for the message.

              • Name — (String)

                The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

              • Version — (String)

                The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

            • SMSTemplate — (map)

              The SMS template to use for the message.

              • Name — (String)

                The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

              • Version — (String)

                The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

            • VoiceTemplate — (map)

              The voice template to use for the message. This object isn't supported for campaigns.

              • Name — (String)

                The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

              • Version — (String)

                The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

            • InAppTemplate — (map)

              The InApp template to use for the message. The InApp template object is not supported for SendMessages.

              • Name — (String)

                The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

              • Version — (String)

                The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

          • TreatmentDescription — (String)

            A custom description of the default treatment for the campaign.

          • TreatmentName — (String)

            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.

          • Priority — (Integer)

            Defines the priority of the campaign, used to decide the order of messages displayed to user if there are multiple messages scheduled to be displayed at the same moment.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • CampaignResponse — (map)

        Provides information about the status, configuration, and other settings for a campaign.

        • AdditionalTreatments — (Array<map>)

          An array of responses, one for each treatment that you defined for the campaign, in addition to the default treatment.

          • CustomDeliveryConfiguration — (map)

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

            • DeliveryUrirequired — (String)

              The destination to send the campaign or treatment to. This value can be one of the following:

              • The name or Amazon Resource Name (ARN) of an AWS Lambda function to invoke to handle delivery of the campaign or treatment.

              • The URL for a web application or service that supports HTTPS and can receive the message. The URL has to be a full URL, including the HTTPS protocol.

            • EndpointTypes — (Array<String>)

              The types of endpoints to send the campaign or treatment to. Each valid value maps to a type of channel that you can associate with an endpoint by using the ChannelType property of an endpoint.

          • Idrequired — (String)

            The unique identifier for the treatment.

          • MessageConfiguration — (map)

            The message configuration settings for the treatment.

            • ADMMessage — (map)

              The message that the campaign sends through the ADM (Amazon Device Messaging) channel. If specified, this message overrides the default message.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • APNSMessage — (map)

              The message that the campaign sends through the APNs (Apple Push Notification service) channel. If specified, this message overrides the default message.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • BaiduMessage — (map)

              The message that the campaign sends through the Baidu (Baidu Cloud Push) channel. If specified, this message overrides the default message.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • CustomMessage — (map)

              The message that the campaign sends through a custom channel, as specified by the delivery configuration (CustomDeliveryConfiguration) settings for the campaign. If specified, this message overrides the default message.

              • Data — (String)

                The raw, JSON-formatted string to use as the payload for the message. The maximum size is 5 KB.

            • DefaultMessage — (map)

              The default message that the campaign sends through all the channels that are configured for the campaign.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • EmailMessage — (map)

              The message that the campaign sends through the email channel. If specified, this message overrides the default message.

              • Body — (String)

                The body of the email for recipients whose email clients don't render HTML content.

              • FromAddress — (String)

                The verified email address to send the email from. The default address is the FromAddress specified for the email channel for the application.

              • Headers — (Array<map>)

                The list of MessageHeaders for the email. You can have up to 15 MessageHeaders for each email.

                • Name — (String)

                  The name of the message header. The header name can contain up to 126 characters.

                • Value — (String)

                  The value of the message header. The header value can contain up to 870 characters, including the length of any rendered attributes. For example if you add the {CreationDate} attribute, it renders as YYYY-MM-DDTHH:MM:SS.SSSZ and is 24 characters in length.

              • HtmlBody — (String)

                The body of the email, in HTML format, for recipients whose email clients render HTML content.

              • Title — (String)

                The subject line, or title, of the email.

            • GCMMessage — (map)

              The message that the campaign sends through the GCM channel, which enables Amazon Pinpoint to send push notifications through the Firebase Cloud Messaging (FCM), formerly Google Cloud Messaging (GCM), service. If specified, this message overrides the default message.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • SMSMessage — (map)

              The message that the campaign sends through the SMS channel. If specified, this message overrides the default message.

              • Body — (String)

                The body of the SMS message.

              • MessageType — (String)

                The SMS message type. Valid values are TRANSACTIONAL (for messages that are critical or time-sensitive, such as a one-time passwords) and PROMOTIONAL (for messsages that aren't critical or time-sensitive, such as marketing messages).

                Possible values include:
                • "TRANSACTIONAL"
                • "PROMOTIONAL"
              • OriginationNumber — (String)

                The long code to send the SMS message from. This value should be one of the dedicated long codes that's assigned to your AWS account. Although it isn't required, we recommend that you specify the long code using an E.164 format to ensure prompt and accurate delivery of the message. For example, +12065550100.

              • SenderId — (String)

                The sender ID to display on recipients' devices when they receive the SMS message.

              • EntityId — (String)

                The entity ID or Principal Entity (PE) id received from the regulatory body for sending SMS in your country.

              • TemplateId — (String)

                The template ID received from the regulatory body for sending SMS in your country.

            • InAppMessage — (map)

              The in-app message configuration.

              • Body — (String)

                The message body of the notification, the email body or the text message.

              • Content — (Array<map>)

                In-app message content.

                • BackgroundColor — (String)

                  The background color for the message.

                • BodyConfig — (map)

                  The configuration for the message body.

                  • Alignmentrequired — (String)

                    The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

                    Possible values include:
                    • "LEFT"
                    • "CENTER"
                    • "RIGHT"
                  • Bodyrequired — (String)

                    Message Body.

                  • TextColorrequired — (String)

                    The text color.

                • HeaderConfig — (map)

                  The configuration for the message header.

                  • Alignmentrequired — (String)

                    The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

                    Possible values include:
                    • "LEFT"
                    • "CENTER"
                    • "RIGHT"
                  • Headerrequired — (String)

                    Message Header.

                  • TextColorrequired — (String)

                    The text color.

                • ImageUrl — (String)

                  The image url for the background of message.

                • PrimaryBtn — (map)

                  The first button inside the message.

                  • Android — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                  • DefaultConfig — (map)

                    Default button content.

                    • BackgroundColor — (String)

                      The background color of the button.

                    • BorderRadius — (Integer)

                      The border radius of the button.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                    • Textrequired — (String)

                      Button text.

                    • TextColor — (String)

                      The text color of the button.

                  • IOS — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                  • Web — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                • SecondaryBtn — (map)

                  The second button inside message.

                  • Android — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                  • DefaultConfig — (map)

                    Default button content.

                    • BackgroundColor — (String)

                      The background color of the button.

                    • BorderRadius — (Integer)

                      The border radius of the button.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                    • Textrequired — (String)

                      Button text.

                    • TextColor — (String)

                      The text color of the button.

                  • IOS — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                  • Web — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

              • CustomConfig — (map<String>)

                Custom config to be sent to client.

              • Layout — (String)

                In-app message layout.

                Possible values include:
                • "BOTTOM_BANNER"
                • "TOP_BANNER"
                • "OVERLAYS"
                • "MOBILE_FEED"
                • "MIDDLE_BANNER"
                • "CAROUSEL"
          • Schedule — (map)

            The schedule settings for the treatment.

            • EndTime — (String)

              The scheduled time, in ISO 8601 format, when the campaign ended or will end.

            • EventFilter — (map)

              The type of event that causes the campaign to be sent, if the value of the Frequency property is EVENT.

              • Dimensionsrequired — (map)

                The dimension settings of the event filter for the campaign.

                • Attributes — (map<map>)

                  One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                  • AttributeType — (String)

                    The type of segment dimension to use. Valid values are:

                    • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                    • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                    • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                    • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                    • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                    • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                    • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                    • Possible values include:
                      • "INCLUSIVE"
                      • "EXCLUSIVE"
                      • "CONTAINS"
                      • "BEFORE"
                      • "AFTER"
                      • "ON"
                      • "BETWEEN"
                    • Valuesrequired — (Array<String>)

                      The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                  • EventType — (map)

                    The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                    • DimensionType — (String)

                      The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                      Possible values include:
                      • "INCLUSIVE"
                      • "EXCLUSIVE"
                    • Valuesrequired — (Array<String>)

                      The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                  • Metrics — (map<map>)

                    One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                    • ComparisonOperatorrequired — (String)

                      The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                    • Valuerequired — (Float)

                      The value to compare.

                • FilterTyperequired — (String)

                  The type of event that causes the campaign to be sent. Valid values are: SYSTEM, sends the campaign when a system event occurs; and, ENDPOINT, sends the campaign when an endpoint event (Events resource) occurs.

                  Possible values include:
                  • "SYSTEM"
                  • "ENDPOINT"
              • Frequency — (String)

                Specifies how often the campaign is sent or whether the campaign is sent in response to a specific event.

                Possible values include:
                • "ONCE"
                • "HOURLY"
                • "DAILY"
                • "WEEKLY"
                • "MONTHLY"
                • "EVENT"
                • "IN_APP_EVENT"
              • IsLocalTime — (Boolean)

                Specifies whether the start and end times for the campaign schedule use each recipient's local time. To base the schedule on each recipient's local time, set this value to true.

              • QuietTime — (map)

                The default quiet time for the campaign. Quiet time is a specific time range when a campaign doesn't send messages to endpoints, if all the following conditions are met:

                • The EndpointDemographic.Timezone property of the endpoint is set to a valid value.

                • The current time in the endpoint's time zone is later than or equal to the time specified by the QuietTime.Start property for the campaign.

                • The current time in the endpoint's time zone is earlier than or equal to the time specified by the QuietTime.End property for the campaign.

                If any of the preceding conditions isn't met, the endpoint will receive messages from the campaign, even if quiet time is enabled.

                • End — (String)

                  The specific time when quiet time ends. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

                • Start — (String)

                  The specific time when quiet time begins. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

              • StartTimerequired — (String)

                The scheduled time when the campaign began or will begin. Valid values are: IMMEDIATE, to start the campaign immediately; or, a specific time in ISO 8601 format.

              • Timezone — (String)

                The starting UTC offset for the campaign schedule, if the value of the IsLocalTime property is true. Valid values are: UTC, UTC+01, UTC+02, UTC+03, UTC+03:30, UTC+04, UTC+04:30, UTC+05, UTC+05:30, UTC+05:45, UTC+06, UTC+06:30, UTC+07, UTC+08, UTC+09, UTC+09:30, UTC+10, UTC+10:30, UTC+11, UTC+12, UTC+13, UTC-02, UTC-03, UTC-04, UTC-05, UTC-06, UTC-07, UTC-08, UTC-09, UTC-10, and UTC-11.

            • SizePercentrequired — (Integer)

              The allocated percentage of users (segment members) that the treatment is sent to.

            • State — (map)

              The current status of the treatment.

              • CampaignStatus — (String)

                The current status of the campaign, or the current status of a treatment that belongs to an A/B test campaign.

                If a campaign uses A/B testing, the campaign has a status of COMPLETED only if all campaign treatments have a status of COMPLETED. If you delete the segment that's associated with a campaign, the campaign fails and has a status of DELETED.

                Possible values include:
                • "SCHEDULED"
                • "EXECUTING"
                • "PENDING_NEXT_RUN"
                • "COMPLETED"
                • "PAUSED"
                • "DELETED"
                • "INVALID"
            • TemplateConfiguration — (map)

              The message template to use for the treatment.

              • EmailTemplate — (map)

                The email template to use for the message.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • PushTemplate — (map)

                The push notification template to use for the message.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • SMSTemplate — (map)

                The SMS template to use for the message.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • VoiceTemplate — (map)

                The voice template to use for the message. This object isn't supported for campaigns.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • InAppTemplate — (map)

                The InApp template to use for the message. The InApp template object is not supported for SendMessages.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

            • TreatmentDescription — (String)

              The custom description of the treatment.

            • TreatmentName — (String)

              The custom name of the treatment.

          • ApplicationIdrequired — (String)

            The unique identifier for the application that the campaign applies to.

          • Arnrequired — (String)

            The Amazon Resource Name (ARN) of the campaign.

          • CreationDaterequired — (String)

            The date, in ISO 8601 format, when the campaign was created.

          • CustomDeliveryConfiguration — (map)

            The delivery configuration settings for sending the campaign through a custom channel.

            • DeliveryUrirequired — (String)

              The destination to send the campaign or treatment to. This value can be one of the following:

              • The name or Amazon Resource Name (ARN) of an AWS Lambda function to invoke to handle delivery of the campaign or treatment.

              • The URL for a web application or service that supports HTTPS and can receive the message. The URL has to be a full URL, including the HTTPS protocol.

            • EndpointTypes — (Array<String>)

              The types of endpoints to send the campaign or treatment to. Each valid value maps to a type of channel that you can associate with an endpoint by using the ChannelType property of an endpoint.

          • DefaultState — (map)

            The current status of the campaign's default treatment. This value exists only for campaigns that have more than one treatment.

            • CampaignStatus — (String)

              The current status of the campaign, or the current status of a treatment that belongs to an A/B test campaign.

              If a campaign uses A/B testing, the campaign has a status of COMPLETED only if all campaign treatments have a status of COMPLETED. If you delete the segment that's associated with a campaign, the campaign fails and has a status of DELETED.

              Possible values include:
              • "SCHEDULED"
              • "EXECUTING"
              • "PENDING_NEXT_RUN"
              • "COMPLETED"
              • "PAUSED"
              • "DELETED"
              • "INVALID"
          • Description — (String)

            The custom description of the campaign.

          • HoldoutPercent — (Integer)

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

          • Hook — (map)

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

            • LambdaFunctionName — (String)

              The name or Amazon Resource Name (ARN) of the AWS Lambda function that Amazon Pinpoint invokes to customize a segment for a campaign.

            • Mode — (String)

              The mode that Amazon Pinpoint uses to invoke the AWS Lambda function. Possible values are:

              • FILTER - Invoke the function to customize the segment that's used by a campaign.

              • DELIVERY - (Deprecated) Previously, invoked the function to send a campaign through a custom channel. This functionality is not supported anymore. To send a campaign through a custom channel, use the CustomDeliveryConfiguration and CampaignCustomMessage objects of the campaign.

              Possible values include:
              • "DELIVERY"
              • "FILTER"
            • WebUrl — (String)

              The web URL that Amazon Pinpoint calls to invoke the AWS Lambda function over HTTPS.

          • Idrequired — (String)

            The unique identifier for the campaign.

          • IsPaused — (Boolean)

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

          • LastModifiedDaterequired — (String)

            The date, in ISO 8601 format, when the campaign was last modified.

          • Limits — (map)

            The messaging limits for the campaign.

            • Daily — (Integer)

              The maximum number of messages that a campaign can send to a single endpoint during a 24-hour period. For an application, this value specifies the default limit for the number of messages that campaigns and journeys can send to a single endpoint during a 24-hour period. The maximum value is 100.

            • MaximumDuration — (Integer)

              The maximum amount of time, in seconds, that a campaign can attempt to deliver a message after the scheduled start time for the campaign. The minimum value is 60 seconds.

            • MessagesPerSecond — (Integer)

              The maximum number of messages that a campaign can send each second. For an application, this value specifies the default limit for the number of messages that campaigns can send each second. The minimum value is 1. The maximum value is 20,000.

            • Total — (Integer)

              The maximum number of messages that a campaign can send to a single endpoint during the course of the campaign. If a campaign recurs, this setting applies to all runs of the campaign. The maximum value is 100.

            • Session — (Integer)

              The maximum total number of messages that the campaign can send per user session.

          • MessageConfiguration — (map)

            The message configuration settings for the campaign.

            • ADMMessage — (map)

              The message that the campaign sends through the ADM (Amazon Device Messaging) channel. If specified, this message overrides the default message.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • APNSMessage — (map)

              The message that the campaign sends through the APNs (Apple Push Notification service) channel. If specified, this message overrides the default message.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • BaiduMessage — (map)

              The message that the campaign sends through the Baidu (Baidu Cloud Push) channel. If specified, this message overrides the default message.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • CustomMessage — (map)

              The message that the campaign sends through a custom channel, as specified by the delivery configuration (CustomDeliveryConfiguration) settings for the campaign. If specified, this message overrides the default message.

              • Data — (String)

                The raw, JSON-formatted string to use as the payload for the message. The maximum size is 5 KB.

            • DefaultMessage — (map)

              The default message that the campaign sends through all the channels that are configured for the campaign.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • EmailMessage — (map)

              The message that the campaign sends through the email channel. If specified, this message overrides the default message.

              • Body — (String)

                The body of the email for recipients whose email clients don't render HTML content.

              • FromAddress — (String)

                The verified email address to send the email from. The default address is the FromAddress specified for the email channel for the application.

              • Headers — (Array<map>)

                The list of MessageHeaders for the email. You can have up to 15 MessageHeaders for each email.

                • Name — (String)

                  The name of the message header. The header name can contain up to 126 characters.

                • Value — (String)

                  The value of the message header. The header value can contain up to 870 characters, including the length of any rendered attributes. For example if you add the {CreationDate} attribute, it renders as YYYY-MM-DDTHH:MM:SS.SSSZ and is 24 characters in length.

              • HtmlBody — (String)

                The body of the email, in HTML format, for recipients whose email clients render HTML content.

              • Title — (String)

                The subject line, or title, of the email.

            • GCMMessage — (map)

              The message that the campaign sends through the GCM channel, which enables Amazon Pinpoint to send push notifications through the Firebase Cloud Messaging (FCM), formerly Google Cloud Messaging (GCM), service. If specified, this message overrides the default message.

              • Action — (String)

                The action to occur if a recipient taps the push notification. Valid values are:

                • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

                • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of iOS and Android.

                • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

                Possible values include:
                • "OPEN_APP"
                • "DEEP_LINK"
                • "URL"
              • Body — (String)

                The body of the notification message. The maximum number of characters is 200.

              • ImageIconUrl — (String)

                The URL of the image to display as the push-notification icon, such as the icon for the app.

              • ImageSmallIconUrl — (String)

                The URL of the image to display as the small, push-notification icon, such as a small version of the icon for the app.

              • ImageUrl — (String)

                The URL of an image to display in the push notification.

              • JsonBody — (String)

                The JSON payload to use for a silent push notification.

              • MediaUrl — (String)

                The URL of the image or video to display in the push notification.

              • RawContent — (String)

                The raw, JSON-formatted string to use as the payload for the notification message. If specified, this value overrides all other content for the message.

              • SilentPush — (Boolean)

                Specifies whether the notification is a silent push notification, which is a push notification that doesn't display on a recipient's device. Silent push notifications can be used for cases such as updating an app's configuration, displaying messages in an in-app message center, or supporting phone home functionality.

              • TimeToLive — (Integer)

                The number of seconds that the push-notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

              • Title — (String)

                The title to display above the notification message on a recipient's device.

              • Url — (String)

                The URL to open in a recipient's default mobile browser, if a recipient taps the push notification and the value of the Action property is URL.

            • SMSMessage — (map)

              The message that the campaign sends through the SMS channel. If specified, this message overrides the default message.

              • Body — (String)

                The body of the SMS message.

              • MessageType — (String)

                The SMS message type. Valid values are TRANSACTIONAL (for messages that are critical or time-sensitive, such as a one-time passwords) and PROMOTIONAL (for messsages that aren't critical or time-sensitive, such as marketing messages).

                Possible values include:
                • "TRANSACTIONAL"
                • "PROMOTIONAL"
              • OriginationNumber — (String)

                The long code to send the SMS message from. This value should be one of the dedicated long codes that's assigned to your AWS account. Although it isn't required, we recommend that you specify the long code using an E.164 format to ensure prompt and accurate delivery of the message. For example, +12065550100.

              • SenderId — (String)

                The sender ID to display on recipients' devices when they receive the SMS message.

              • EntityId — (String)

                The entity ID or Principal Entity (PE) id received from the regulatory body for sending SMS in your country.

              • TemplateId — (String)

                The template ID received from the regulatory body for sending SMS in your country.

            • InAppMessage — (map)

              The in-app message configuration.

              • Body — (String)

                The message body of the notification, the email body or the text message.

              • Content — (Array<map>)

                In-app message content.

                • BackgroundColor — (String)

                  The background color for the message.

                • BodyConfig — (map)

                  The configuration for the message body.

                  • Alignmentrequired — (String)

                    The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

                    Possible values include:
                    • "LEFT"
                    • "CENTER"
                    • "RIGHT"
                  • Bodyrequired — (String)

                    Message Body.

                  • TextColorrequired — (String)

                    The text color.

                • HeaderConfig — (map)

                  The configuration for the message header.

                  • Alignmentrequired — (String)

                    The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

                    Possible values include:
                    • "LEFT"
                    • "CENTER"
                    • "RIGHT"
                  • Headerrequired — (String)

                    Message Header.

                  • TextColorrequired — (String)

                    The text color.

                • ImageUrl — (String)

                  The image url for the background of message.

                • PrimaryBtn — (map)

                  The first button inside the message.

                  • Android — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                  • DefaultConfig — (map)

                    Default button content.

                    • BackgroundColor — (String)

                      The background color of the button.

                    • BorderRadius — (Integer)

                      The border radius of the button.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                    • Textrequired — (String)

                      Button text.

                    • TextColor — (String)

                      The text color of the button.

                  • IOS — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                  • Web — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                • SecondaryBtn — (map)

                  The second button inside message.

                  • Android — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                  • DefaultConfig — (map)

                    Default button content.

                    • BackgroundColor — (String)

                      The background color of the button.

                    • BorderRadius — (Integer)

                      The border radius of the button.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                    • Textrequired — (String)

                      Button text.

                    • TextColor — (String)

                      The text color of the button.

                  • IOS — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

                  • Web — (map)

                    Default button content.

                    • ButtonActionrequired — (String)

                      Action triggered by the button.

                      Possible values include:
                      • "LINK"
                      • "DEEP_LINK"
                      • "CLOSE"
                    • Link — (String)

                      Button destination.

              • CustomConfig — (map<String>)

                Custom config to be sent to client.

              • Layout — (String)

                In-app message layout.

                Possible values include:
                • "BOTTOM_BANNER"
                • "TOP_BANNER"
                • "OVERLAYS"
                • "MOBILE_FEED"
                • "MIDDLE_BANNER"
                • "CAROUSEL"
          • Name — (String)

            The name of the campaign.

          • Schedule — (map)

            The schedule settings for the campaign.

            • EndTime — (String)

              The scheduled time, in ISO 8601 format, when the campaign ended or will end.

            • EventFilter — (map)

              The type of event that causes the campaign to be sent, if the value of the Frequency property is EVENT.

              • Dimensionsrequired — (map)

                The dimension settings of the event filter for the campaign.

                • Attributes — (map<map>)

                  One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                  • AttributeType — (String)

                    The type of segment dimension to use. Valid values are:

                    • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                    • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                    • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                    • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                    • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                    • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                    • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                    • Possible values include:
                      • "INCLUSIVE"
                      • "EXCLUSIVE"
                      • "CONTAINS"
                      • "BEFORE"
                      • "AFTER"
                      • "ON"
                      • "BETWEEN"
                    • Valuesrequired — (Array<String>)

                      The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                  • EventType — (map)

                    The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                    • DimensionType — (String)

                      The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                      Possible values include:
                      • "INCLUSIVE"
                      • "EXCLUSIVE"
                    • Valuesrequired — (Array<String>)

                      The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                  • Metrics — (map<map>)

                    One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                    • ComparisonOperatorrequired — (String)

                      The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                    • Valuerequired — (Float)

                      The value to compare.

                • FilterTyperequired — (String)

                  The type of event that causes the campaign to be sent. Valid values are: SYSTEM, sends the campaign when a system event occurs; and, ENDPOINT, sends the campaign when an endpoint event (Events resource) occurs.

                  Possible values include:
                  • "SYSTEM"
                  • "ENDPOINT"
              • Frequency — (String)

                Specifies how often the campaign is sent or whether the campaign is sent in response to a specific event.

                Possible values include:
                • "ONCE"
                • "HOURLY"
                • "DAILY"
                • "WEEKLY"
                • "MONTHLY"
                • "EVENT"
                • "IN_APP_EVENT"
              • IsLocalTime — (Boolean)

                Specifies whether the start and end times for the campaign schedule use each recipient's local time. To base the schedule on each recipient's local time, set this value to true.

              • QuietTime — (map)

                The default quiet time for the campaign. Quiet time is a specific time range when a campaign doesn't send messages to endpoints, if all the following conditions are met:

                • The EndpointDemographic.Timezone property of the endpoint is set to a valid value.

                • The current time in the endpoint's time zone is later than or equal to the time specified by the QuietTime.Start property for the campaign.

                • The current time in the endpoint's time zone is earlier than or equal to the time specified by the QuietTime.End property for the campaign.

                If any of the preceding conditions isn't met, the endpoint will receive messages from the campaign, even if quiet time is enabled.

                • End — (String)

                  The specific time when quiet time ends. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

                • Start — (String)

                  The specific time when quiet time begins. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

              • StartTimerequired — (String)

                The scheduled time when the campaign began or will begin. Valid values are: IMMEDIATE, to start the campaign immediately; or, a specific time in ISO 8601 format.

              • Timezone — (String)

                The starting UTC offset for the campaign schedule, if the value of the IsLocalTime property is true. Valid values are: UTC, UTC+01, UTC+02, UTC+03, UTC+03:30, UTC+04, UTC+04:30, UTC+05, UTC+05:30, UTC+05:45, UTC+06, UTC+06:30, UTC+07, UTC+08, UTC+09, UTC+09:30, UTC+10, UTC+10:30, UTC+11, UTC+12, UTC+13, UTC-02, UTC-03, UTC-04, UTC-05, UTC-06, UTC-07, UTC-08, UTC-09, UTC-10, and UTC-11.

            • SegmentIdrequired — (String)

              The unique identifier for the segment that's associated with the campaign.

            • SegmentVersionrequired — (Integer)

              The version number of the segment that's associated with the campaign.

            • State — (map)

              The current status of the campaign.

              • CampaignStatus — (String)

                The current status of the campaign, or the current status of a treatment that belongs to an A/B test campaign.

                If a campaign uses A/B testing, the campaign has a status of COMPLETED only if all campaign treatments have a status of COMPLETED. If you delete the segment that's associated with a campaign, the campaign fails and has a status of DELETED.

                Possible values include:
                • "SCHEDULED"
                • "EXECUTING"
                • "PENDING_NEXT_RUN"
                • "COMPLETED"
                • "PAUSED"
                • "DELETED"
                • "INVALID"
            • tags — (map<String>)

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

            • TemplateConfiguration — (map)

              The message template that’s used for the campaign.

              • EmailTemplate — (map)

                The email template to use for the message.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • PushTemplate — (map)

                The push notification template to use for the message.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • SMSTemplate — (map)

                The SMS template to use for the message.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • VoiceTemplate — (map)

                The voice template to use for the message. This object isn't supported for campaigns.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • InAppTemplate — (map)

                The InApp template to use for the message. The InApp template object is not supported for SendMessages.

                • Name — (String)

                  The name of the message template to use for the message. If specified, this value must match the name of an existing message template.

                • Version — (String)

                  The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

            • TreatmentDescription — (String)

              The custom description of the default treatment for the campaign.

            • TreatmentName — (String)

              The 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.

            • Version — (Integer)

              The version number of the campaign.

            • Priority — (Integer)

              Defines the priority of the campaign, used to decide the order of messages displayed to user if there are multiple messages scheduled to be displayed at the same moment.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

updateEmailChannel(params = {}, callback) ⇒ AWS.Request

Enables the email channel for an application or updates the status and settings of the email channel for an application.

Service Reference:

Examples:

Calling the updateEmailChannel operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  EmailChannelRequest: { /* required */
    FromAddress: 'STRING_VALUE', /* required */
    Identity: 'STRING_VALUE', /* required */
    ConfigurationSet: 'STRING_VALUE',
    Enabled: true || false,
    OrchestrationSendingRoleArn: 'STRING_VALUE',
    RoleArn: 'STRING_VALUE'
  }
};
pinpoint.updateEmailChannel(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • EmailChannelRequest — (map)

      Specifies the status and settings of the email channel for an application.

      • ConfigurationSet — (String)

        The Amazon SES configuration set that you want to apply to messages that you send through the channel.

      • Enabled — (Boolean)

        Specifies whether to enable the email channel for the application.

      • FromAddressrequired — (String)

        The verified email address that you want to send email from when you send email through the channel.

      • Identityrequired — (String)

        The Amazon Resource Name (ARN) of the identity, verified with Amazon Simple Email Service (Amazon SES), that you want to use when you send email through the channel.

      • RoleArn — (String)

        The ARN of the AWS Identity and Access Management (IAM) role that you want Amazon Pinpoint to use when it submits email-related event data for the channel.

      • OrchestrationSendingRoleArn — (String)

        The ARN of an IAM role for Amazon Pinpoint to use to send email from your campaigns or journeys through Amazon SES.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • EmailChannelResponse — (map)

        Provides information about the status and settings of the email channel for an application.

        • ApplicationId — (String)

          The unique identifier for the application that the email channel applies to.

        • ConfigurationSet — (String)

          The Amazon SES configuration set that's applied to messages that are sent through the channel.

        • CreationDate — (String)

          The date and time, in ISO 8601 format, when the email channel was enabled.

        • Enabled — (Boolean)

          Specifies whether the email channel is enabled for the application.

        • FromAddress — (String)

          The verified email address that email is sent from when you send email through the channel.

        • HasCredential — (Boolean)

          (Not used) This property is retained only for backward compatibility.

        • Id — (String)

          (Deprecated) An identifier for the email channel. This property is retained only for backward compatibility.

        • Identity — (String)

          The Amazon Resource Name (ARN) of the identity, verified with Amazon Simple Email Service (Amazon SES), that's used when you send email through the channel.

        • IsArchived — (Boolean)

          Specifies whether the email channel is archived.

        • LastModifiedBy — (String)

          The user who last modified the email channel.

        • LastModifiedDate — (String)

          The date and time, in ISO 8601 format, when the email channel was last modified.

        • MessagesPerSecond — (Integer)

          The maximum number of emails that can be sent through the channel each second.

        • Platformrequired — (String)

          The type of messaging or notification platform for the channel. For the email channel, this value is EMAIL.

        • RoleArn — (String)

          The ARN of the AWS Identity and Access Management (IAM) role that Amazon Pinpoint uses to submit email-related event data for the channel.

        • OrchestrationSendingRoleArn — (String)

          The ARN of an IAM role for Amazon Pinpoint to use to send email from your campaigns or journeys through Amazon SES.

        • Version — (Integer)

          The current version of the email channel.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

updateEmailTemplate(params = {}, callback) ⇒ AWS.Request

Updates an existing message template for messages that are sent through the email channel.

Service Reference:

Examples:

Calling the updateEmailTemplate operation

var params = {
  EmailTemplateRequest: { /* required */
    DefaultSubstitutions: 'STRING_VALUE',
    Headers: [
      {
        Name: 'STRING_VALUE',
        Value: 'STRING_VALUE'
      },
      /* more items */
    ],
    HtmlPart: 'STRING_VALUE',
    RecommenderId: 'STRING_VALUE',
    Subject: 'STRING_VALUE',
    TemplateDescription: 'STRING_VALUE',
    TextPart: 'STRING_VALUE',
    tags: {
      '<__string>': 'STRING_VALUE',
      /* '<__string>': ... */
    }
  },
  TemplateName: 'STRING_VALUE', /* required */
  CreateNewVersion: true || false,
  Version: 'STRING_VALUE'
};
pinpoint.updateEmailTemplate(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • CreateNewVersion — (Boolean)

      Specifies whether to save the updates as a new version of the message template. Valid values are: true, save the updates as a new version; and, false, save the updates to (overwrite) the latest existing version of the template.

      If you don't specify a value for this parameter, Amazon Pinpoint saves the updates to (overwrites) the latest existing version of the template. If you specify a value of true for this parameter, don't specify a value for the version parameter. Otherwise, an error will occur.

    • EmailTemplateRequest — (map)

      Specifies the content and settings for a message template that can be used in messages that are sent through the email channel.

      • DefaultSubstitutions — (String)

        A JSON object that specifies the default values to use for message variables in the message template. This object is a set of key-value pairs. Each key defines a message variable in the template. The corresponding value defines the default value for that variable. When you create a message that's based on the template, you can override these defaults with message-specific and address-specific variables and values.

      • HtmlPart — (String)

        The message body, in HTML format, to use in email messages that are based on the message template. We recommend using HTML format for email clients that render HTML content. You can include links, formatted text, and more in an HTML message.

      • RecommenderId — (String)

        The unique identifier for the recommender model to use for the message template. Amazon Pinpoint uses this value to determine how to retrieve and process data from a recommender model when it sends messages that use the template, if the template contains message variables for recommendation data.

      • Subject — (String)

        The subject line, or title, to use in email messages that are based on the message template.

      • Headers — (Array<map>)

        The list of MessageHeaders for the email. You can have up to 15 Headers.

        • Name — (String)

          The name of the message header. The header name can contain up to 126 characters.

        • Value — (String)

          The value of the message header. The header value can contain up to 870 characters, including the length of any rendered attributes. For example if you add the {CreationDate} attribute, it renders as YYYY-MM-DDTHH:MM:SS.SSSZ and is 24 characters in length.

      • tags — (map<String>)
        Note: As of 22-05-2023 tags has been deprecated for update operations. After this date any value in tags is not processed and an error code is not returned. To manage tags we recommend using either Tags in the API Reference for Amazon Pinpoint, resourcegroupstaggingapi commands in the AWS Command Line Interface Documentation or resourcegroupstaggingapi in the AWS SDK.

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

      • TemplateDescription — (String)

        A custom description of the message template.

      • TextPart — (String)

        The message body, in plain text format, to use in email messages that are based on the message template. We recommend using plain text format for email clients that don't render HTML content and clients that are connected to high-latency networks, such as mobile devices.

    • TemplateName — (String)

      The name of the message template. A template name must start with an alphanumeric character and can contain a maximum of 128 characters. The characters can be alphanumeric characters, underscores (_), or hyphens (-). Template names are case sensitive.

    • Version — (String)

      The unique identifier for the version of the message template to update, retrieve information about, or delete. To retrieve identifiers and other information for all the versions of a template, use the Template Versions resource.

      If specified, this value must match the identifier for an existing template version. If specified for an update operation, this value must match the identifier for the latest existing version of the template. This restriction helps ensure that race conditions don't occur.

      If you don't specify a value for this parameter, Amazon Pinpoint does the following:

      • For a get operation, retrieves information about the active version of the template.

      • For an update operation, saves the updates to (overwrites) the latest existing version of the template, if the create-new-version parameter isn't used or is set to false.

      • For a delete operation, deletes the template, including all versions of the template.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • MessageBody — (map)

        Provides information about an API request or response.

        • Message — (String)

          The message that's returned from the API.

        • RequestID — (String)

          The unique identifier for the request or response.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

updateEndpoint(params = {}, callback) ⇒ AWS.Request

Creates a new endpoint for an application or updates the settings and attributes of an existing endpoint for an application. You can also use this operation to define custom attributes for an endpoint. If an update includes one or more values for a custom attribute, Amazon Pinpoint replaces (overwrites) any existing values with the new values.

Service Reference:

Examples:

Calling the updateEndpoint operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  EndpointId: 'STRING_VALUE', /* required */
  EndpointRequest: { /* required */
    Address: 'STRING_VALUE',
    Attributes: {
      '<__string>': [
        'STRING_VALUE',
        /* more items */
      ],
      /* '<__string>': ... */
    },
    ChannelType: PUSH | GCM | APNS | APNS_SANDBOX | APNS_VOIP | APNS_VOIP_SANDBOX | ADM | SMS | VOICE | EMAIL | BAIDU | CUSTOM | IN_APP,
    Demographic: {
      AppVersion: 'STRING_VALUE',
      Locale: 'STRING_VALUE',
      Make: 'STRING_VALUE',
      Model: 'STRING_VALUE',
      ModelVersion: 'STRING_VALUE',
      Platform: 'STRING_VALUE',
      PlatformVersion: 'STRING_VALUE',
      Timezone: 'STRING_VALUE'
    },
    EffectiveDate: 'STRING_VALUE',
    EndpointStatus: 'STRING_VALUE',
    Location: {
      City: 'STRING_VALUE',
      Country: 'STRING_VALUE',
      Latitude: 'NUMBER_VALUE',
      Longitude: 'NUMBER_VALUE',
      PostalCode: 'STRING_VALUE',
      Region: 'STRING_VALUE'
    },
    Metrics: {
      '<__string>': 'NUMBER_VALUE',
      /* '<__string>': ... */
    },
    OptOut: 'STRING_VALUE',
    RequestId: 'STRING_VALUE',
    User: {
      UserAttributes: {
        '<__string>': [
          'STRING_VALUE',
          /* more items */
        ],
        /* '<__string>': ... */
      },
      UserId: 'STRING_VALUE'
    }
  }
};
pinpoint.updateEndpoint(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • EndpointId — (String)

      The case insensitive unique identifier for the endpoint. The identifier can't contain $, { or }.

    • EndpointRequest — (map)

      Specifies the channel type and other settings for an endpoint.

      • Address — (String)

        The destination address for messages or push notifications that you send to the endpoint. The address varies by channel. For a push-notification channel, use the token provided by the push notification service, such as an Apple Push Notification service (APNs) device token or a Firebase Cloud Messaging (FCM) registration token. For the SMS channel, use a phone number in E.164 format, such as +12065550100. For the email channel, use an email address.

      • Attributes — (map<Array<String>>)

        One or more custom attributes that describe the endpoint by associating a name with an array of values. For example, the value of a custom attribute named Interests might be: ["Science", "Music", "Travel"]. You can use these attributes as filter criteria when you create segments. Attribute names are case sensitive.

        An attribute name can contain up to 50 characters. An attribute value can contain up to 100 characters. When you define the name of a custom attribute, avoid using the following characters: number sign (#), colon (:), question mark (?), backslash (), and slash (/). The Amazon Pinpoint console can't display attribute names that contain these characters. This restriction doesn't apply to attribute values.

      • ChannelType — (String)

        The channel to use when sending messages or push notifications to the endpoint.

        Possible values include:
        • "PUSH"
        • "GCM"
        • "APNS"
        • "APNS_SANDBOX"
        • "APNS_VOIP"
        • "APNS_VOIP_SANDBOX"
        • "ADM"
        • "SMS"
        • "VOICE"
        • "EMAIL"
        • "BAIDU"
        • "CUSTOM"
        • "IN_APP"
      • Demographic — (map)

        The demographic information for the endpoint, such as the time zone and platform.

        • AppVersion — (String)

          The version of the app that's associated with the endpoint.

        • Locale — (String)

          The locale of the endpoint, in the following format: the ISO 639-1 alpha-2 code, followed by an underscore (_), followed by an ISO 3166-1 alpha-2 value.

        • Make — (String)

          The manufacturer of the endpoint device, such as apple or samsung.

        • Model — (String)

          The model name or number of the endpoint device, such as iPhone or SM-G900F.

        • ModelVersion — (String)

          The model version of the endpoint device.

        • Platform — (String)

          The platform of the endpoint device, such as ios.

        • PlatformVersion — (String)

          The platform version of the endpoint device.

        • Timezone — (String)

          The time zone of the endpoint, specified as a tz database name value, such as America/Los_Angeles.

      • EffectiveDate — (String)

        The date and time, in ISO 8601 format, when the endpoint is updated.

      • EndpointStatus — (String)

        Specifies whether to send messages or push notifications to the endpoint. Valid values are: ACTIVE, messages are sent to the endpoint; and, INACTIVE, messages aren’t sent to the endpoint.

        Amazon Pinpoint automatically sets this value to ACTIVE when you create an endpoint or update an existing endpoint. Amazon Pinpoint automatically sets this value to INACTIVE if you update another endpoint that has the same address specified by the Address property.

      • Location — (map)

        The geographic information for the endpoint.

        • City — (String)

          The name of the city where the endpoint is located.

        • Country — (String)

          The two-character code, in ISO 3166-1 alpha-2 format, for the country or region where the endpoint is located. For example, US for the United States.

        • Latitude — (Float)

          The latitude coordinate of the endpoint location, rounded to one decimal place.

        • Longitude — (Float)

          The longitude coordinate of the endpoint location, rounded to one decimal place.

        • PostalCode — (String)

          The postal or ZIP code for the area where the endpoint is located.

        • Region — (String)

          The name of the region where the endpoint is located. For locations in the United States, this value is the name of a state.

      • Metrics — (map<Float>)

        One or more custom metrics that your app reports to Amazon Pinpoint for the endpoint.

      • OptOut — (String)

        Specifies whether the user who's associated with the endpoint has opted out of receiving messages and push notifications from you. Possible values are: ALL, the user has opted out and doesn't want to receive any messages or push notifications; and, NONE, the user hasn't opted out and wants to receive all messages and push notifications.

      • RequestId — (String)

        The unique identifier for the most recent request to update the endpoint.

      • User — (map)

        One or more custom attributes that describe the user who's associated with the endpoint.

        • UserAttributes — (map<Array<String>>)

          One or more custom attributes that describe the user by associating a name with an array of values. For example, the value of an attribute named Interests might be: ["Science", "Music", "Travel"]. You can use these attributes as filter criteria when you create segments. Attribute names are case sensitive.

          An attribute name can contain up to 50 characters. An attribute value can contain up to 100 characters. When you define the name of a custom attribute, avoid using the following characters: number sign (#), colon (:), question mark (?), backslash (), and slash (/). The Amazon Pinpoint console can't display attribute names that contain these characters. This restriction doesn't apply to attribute values.

        • UserId — (String)

          The unique identifier for the user.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • MessageBody — (map)

        Provides information about an API request or response.

        • Message — (String)

          The message that's returned from the API.

        • RequestID — (String)

          The unique identifier for the request or response.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

updateEndpointsBatch(params = {}, callback) ⇒ AWS.Request

Creates a new batch of endpoints for an application or updates the settings and attributes of a batch of existing endpoints for an application. You can also use this operation to define custom attributes for a batch of endpoints. If an update includes one or more values for a custom attribute, Amazon Pinpoint replaces (overwrites) any existing values with the new values.

Service Reference:

Examples:

Calling the updateEndpointsBatch operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  EndpointBatchRequest: { /* required */
    Item: [ /* required */
      {
        Address: 'STRING_VALUE',
        Attributes: {
          '<__string>': [
            'STRING_VALUE',
            /* more items */
          ],
          /* '<__string>': ... */
        },
        ChannelType: PUSH | GCM | APNS | APNS_SANDBOX | APNS_VOIP | APNS_VOIP_SANDBOX | ADM | SMS | VOICE | EMAIL | BAIDU | CUSTOM | IN_APP,
        Demographic: {
          AppVersion: 'STRING_VALUE',
          Locale: 'STRING_VALUE',
          Make: 'STRING_VALUE',
          Model: 'STRING_VALUE',
          ModelVersion: 'STRING_VALUE',
          Platform: 'STRING_VALUE',
          PlatformVersion: 'STRING_VALUE',
          Timezone: 'STRING_VALUE'
        },
        EffectiveDate: 'STRING_VALUE',
        EndpointStatus: 'STRING_VALUE',
        Id: 'STRING_VALUE',
        Location: {
          City: 'STRING_VALUE',
          Country: 'STRING_VALUE',
          Latitude: 'NUMBER_VALUE',
          Longitude: 'NUMBER_VALUE',
          PostalCode: 'STRING_VALUE',
          Region: 'STRING_VALUE'
        },
        Metrics: {
          '<__string>': 'NUMBER_VALUE',
          /* '<__string>': ... */
        },
        OptOut: 'STRING_VALUE',
        RequestId: 'STRING_VALUE',
        User: {
          UserAttributes: {
            '<__string>': [
              'STRING_VALUE',
              /* more items */
            ],
            /* '<__string>': ... */
          },
          UserId: 'STRING_VALUE'
        }
      },
      /* more items */
    ]
  }
};
pinpoint.updateEndpointsBatch(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • EndpointBatchRequest — (map)

      Specifies a batch of endpoints to create or update and the settings and attributes to set or change for each endpoint.

      • Itemrequired — (Array<map>)

        An array that defines the endpoints to create or update and, for each endpoint, the property values to set or change. An array can contain a maximum of 100 items.

        • Address — (String)

          The destination address for messages or push notifications that you send to the endpoint. The address varies by channel. For a push-notification channel, use the token provided by the push notification service, such as an Apple Push Notification service (APNs) device token or a Firebase Cloud Messaging (FCM) registration token. For the SMS channel, use a phone number in E.164 format, such as +12065550100. For the email channel, use an email address.

        • Attributes — (map<Array<String>>)

          One or more custom attributes that describe the endpoint by associating a name with an array of values. For example, the value of a custom attribute named Interests might be: ["Science", "Music", "Travel"]. You can use these attributes as filter criteria when you create segments. Attribute names are case sensitive.

          An attribute name can contain up to 50 characters. An attribute value can contain up to 100 characters. When you define the name of a custom attribute, avoid using the following characters: number sign (#), colon (:), question mark (?), backslash (), and slash (/). The Amazon Pinpoint console can't display attribute names that contain these characters. This restriction doesn't apply to attribute values.

        • ChannelType — (String)

          The channel to use when sending messages or push notifications to the endpoint.

          Possible values include:
          • "PUSH"
          • "GCM"
          • "APNS"
          • "APNS_SANDBOX"
          • "APNS_VOIP"
          • "APNS_VOIP_SANDBOX"
          • "ADM"
          • "SMS"
          • "VOICE"
          • "EMAIL"
          • "BAIDU"
          • "CUSTOM"
          • "IN_APP"
        • Demographic — (map)

          The demographic information for the endpoint, such as the time zone and platform.

          • AppVersion — (String)

            The version of the app that's associated with the endpoint.

          • Locale — (String)

            The locale of the endpoint, in the following format: the ISO 639-1 alpha-2 code, followed by an underscore (_), followed by an ISO 3166-1 alpha-2 value.

          • Make — (String)

            The manufacturer of the endpoint device, such as apple or samsung.

          • Model — (String)

            The model name or number of the endpoint device, such as iPhone or SM-G900F.

          • ModelVersion — (String)

            The model version of the endpoint device.

          • Platform — (String)

            The platform of the endpoint device, such as ios.

          • PlatformVersion — (String)

            The platform version of the endpoint device.

          • Timezone — (String)

            The time zone of the endpoint, specified as a tz database name value, such as America/Los_Angeles.

        • EffectiveDate — (String)

          The date and time, in ISO 8601 format, when the endpoint was created or updated.

        • EndpointStatus — (String)

          Specifies whether to send messages or push notifications to the endpoint. Valid values are: ACTIVE, messages are sent to the endpoint; and, INACTIVE, messages aren’t sent to the endpoint.

          Amazon Pinpoint automatically sets this value to ACTIVE when you create an endpoint or update an existing endpoint. Amazon Pinpoint automatically sets this value to INACTIVE if you update another endpoint that has the same address specified by the Address property.

        • Id — (String)

          The unique identifier for the endpoint in the context of the batch.

        • Location — (map)

          The geographic information for the endpoint.

          • City — (String)

            The name of the city where the endpoint is located.

          • Country — (String)

            The two-character code, in ISO 3166-1 alpha-2 format, for the country or region where the endpoint is located. For example, US for the United States.

          • Latitude — (Float)

            The latitude coordinate of the endpoint location, rounded to one decimal place.

          • Longitude — (Float)

            The longitude coordinate of the endpoint location, rounded to one decimal place.

          • PostalCode — (String)

            The postal or ZIP code for the area where the endpoint is located.

          • Region — (String)

            The name of the region where the endpoint is located. For locations in the United States, this value is the name of a state.

        • Metrics — (map<Float>)

          One or more custom metrics that your app reports to Amazon Pinpoint for the endpoint.

        • OptOut — (String)

          Specifies whether the user who's associated with the endpoint has opted out of receiving messages and push notifications from you. Possible values are: ALL, the user has opted out and doesn't want to receive any messages or push notifications; and, NONE, the user hasn't opted out and wants to receive all messages and push notifications.

        • RequestId — (String)

          The unique identifier for the request to create or update the endpoint.

        • User — (map)

          One or more custom attributes that describe the user who's associated with the endpoint.

          • UserAttributes — (map<Array<String>>)

            One or more custom attributes that describe the user by associating a name with an array of values. For example, the value of an attribute named Interests might be: ["Science", "Music", "Travel"]. You can use these attributes as filter criteria when you create segments. Attribute names are case sensitive.

            An attribute name can contain up to 50 characters. An attribute value can contain up to 100 characters. When you define the name of a custom attribute, avoid using the following characters: number sign (#), colon (:), question mark (?), backslash (), and slash (/). The Amazon Pinpoint console can't display attribute names that contain these characters. This restriction doesn't apply to attribute values.

          • UserId — (String)

            The unique identifier for the user.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • MessageBody — (map)

        Provides information about an API request or response.

        • Message — (String)

          The message that's returned from the API.

        • RequestID — (String)

          The unique identifier for the request or response.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

updateGcmChannel(params = {}, callback) ⇒ AWS.Request

Enables the GCM channel for an application or updates the status and settings of the GCM channel for an application.

Service Reference:

Examples:

Calling the updateGcmChannel operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  GCMChannelRequest: { /* required */
    ApiKey: 'STRING_VALUE',
    DefaultAuthenticationMethod: 'STRING_VALUE',
    Enabled: true || false,
    ServiceJson: 'STRING_VALUE'
  }
};
pinpoint.updateGcmChannel(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • GCMChannelRequest — (map)

      Specifies the status and settings of the GCM channel for an application. This channel enables Amazon Pinpoint to send push notifications through the Firebase Cloud Messaging (FCM), formerly Google Cloud Messaging (GCM), service.

      • ApiKey — (String)

        The Web API Key, also referred to as an API_KEY or server key, that you received from Google to communicate with Google services.

      • DefaultAuthenticationMethod — (String)

        The default authentication method used for GCM. Values are either "TOKEN" or "KEY". Defaults to "KEY".

      • Enabled — (Boolean)

        Specifies whether to enable the GCM channel for the application.

      • ServiceJson — (String)

        The contents of the JSON file provided by Google during registration in order to generate an access token for authentication. For more information see Migrate from legacy FCM APIs to HTTP v1.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • GCMChannelResponse — (map)

        Provides information about the status and settings of the GCM channel for an application. The GCM channel enables Amazon Pinpoint to send push notifications through the Firebase Cloud Messaging (FCM), formerly Google Cloud Messaging (GCM), service.

        • ApplicationId — (String)

          The unique identifier for the application that the GCM channel applies to.

        • CreationDate — (String)

          The date and time when the GCM channel was enabled.

        • Credential — (String)

          The Web API Key, also referred to as an API_KEY or server key, that you received from Google to communicate with Google services.

        • DefaultAuthenticationMethod — (String)

          The default authentication method used for GCM. Values are either "TOKEN" or "KEY". Defaults to "KEY".

        • Enabled — (Boolean)

          Specifies whether the GCM channel is enabled for the application.

        • HasCredential — (Boolean)

          (Not used) This property is retained only for backward compatibility.

        • HasFcmServiceCredentials — (Boolean)

          Returns true if the JSON file provided by Google during registration process was used in the ServiceJson field of the request.

        • Id — (String)

          (Deprecated) An identifier for the GCM channel. This property is retained only for backward compatibility.

        • IsArchived — (Boolean)

          Specifies whether the GCM channel is archived.

        • LastModifiedBy — (String)

          The user who last modified the GCM channel.

        • LastModifiedDate — (String)

          The date and time when the GCM channel was last modified.

        • Platformrequired — (String)

          The type of messaging or notification platform for the channel. For the GCM channel, this value is GCM.

        • Version — (Integer)

          The current version of the GCM channel.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

updateInAppTemplate(params = {}, callback) ⇒ AWS.Request

Updates an existing message template for messages sent through the in-app message channel.

Service Reference:

Examples:

Calling the updateInAppTemplate operation

var params = {
  InAppTemplateRequest: { /* required */
    Content: [
      {
        BackgroundColor: 'STRING_VALUE',
        BodyConfig: {
          Alignment: LEFT | CENTER | RIGHT, /* required */
          Body: 'STRING_VALUE', /* required */
          TextColor: 'STRING_VALUE' /* required */
        },
        HeaderConfig: {
          Alignment: LEFT | CENTER | RIGHT, /* required */
          Header: 'STRING_VALUE', /* required */
          TextColor: 'STRING_VALUE' /* required */
        },
        ImageUrl: 'STRING_VALUE',
        PrimaryBtn: {
          Android: {
            ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
            Link: 'STRING_VALUE'
          },
          DefaultConfig: {
            ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
            Text: 'STRING_VALUE', /* required */
            BackgroundColor: 'STRING_VALUE',
            BorderRadius: 'NUMBER_VALUE',
            Link: 'STRING_VALUE',
            TextColor: 'STRING_VALUE'
          },
          IOS: {
            ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
            Link: 'STRING_VALUE'
          },
          Web: {
            ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
            Link: 'STRING_VALUE'
          }
        },
        SecondaryBtn: {
          Android: {
            ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
            Link: 'STRING_VALUE'
          },
          DefaultConfig: {
            ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
            Text: 'STRING_VALUE', /* required */
            BackgroundColor: 'STRING_VALUE',
            BorderRadius: 'NUMBER_VALUE',
            Link: 'STRING_VALUE',
            TextColor: 'STRING_VALUE'
          },
          IOS: {
            ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
            Link: 'STRING_VALUE'
          },
          Web: {
            ButtonAction: LINK | DEEP_LINK | CLOSE, /* required */
            Link: 'STRING_VALUE'
          }
        }
      },
      /* more items */
    ],
    CustomConfig: {
      '<__string>': 'STRING_VALUE',
      /* '<__string>': ... */
    },
    Layout: BOTTOM_BANNER | TOP_BANNER | OVERLAYS | MOBILE_FEED | MIDDLE_BANNER | CAROUSEL,
    TemplateDescription: 'STRING_VALUE',
    tags: {
      '<__string>': 'STRING_VALUE',
      /* '<__string>': ... */
    }
  },
  TemplateName: 'STRING_VALUE', /* required */
  CreateNewVersion: true || false,
  Version: 'STRING_VALUE'
};
pinpoint.updateInAppTemplate(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • CreateNewVersion — (Boolean)

      Specifies whether to save the updates as a new version of the message template. Valid values are: true, save the updates as a new version; and, false, save the updates to (overwrite) the latest existing version of the template.

      If you don't specify a value for this parameter, Amazon Pinpoint saves the updates to (overwrites) the latest existing version of the template. If you specify a value of true for this parameter, don't specify a value for the version parameter. Otherwise, an error will occur.

    • InAppTemplateRequest — (map)

      InApp Template Request.

      • Content — (Array<map>)

        The content of the message, can include up to 5 modals. Each modal must contain a message, a header, and background color. ImageUrl and buttons are optional.

        • BackgroundColor — (String)

          The background color for the message.

        • BodyConfig — (map)

          The configuration for the message body.

          • Alignmentrequired — (String)

            The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

            Possible values include:
            • "LEFT"
            • "CENTER"
            • "RIGHT"
          • Bodyrequired — (String)

            Message Body.

          • TextColorrequired — (String)

            The text color.

        • HeaderConfig — (map)

          The configuration for the message header.

          • Alignmentrequired — (String)

            The alignment of the text. Valid values: LEFT, CENTER, RIGHT.

            Possible values include:
            • "LEFT"
            • "CENTER"
            • "RIGHT"
          • Headerrequired — (String)

            Message Header.

          • TextColorrequired — (String)

            The text color.

        • ImageUrl — (String)

          The image url for the background of message.

        • PrimaryBtn — (map)

          The first button inside the message.

          • Android — (map)

            Default button content.

            • ButtonActionrequired — (String)

              Action triggered by the button.

              Possible values include:
              • "LINK"
              • "DEEP_LINK"
              • "CLOSE"
            • Link — (String)

              Button destination.

          • DefaultConfig — (map)

            Default button content.

            • BackgroundColor — (String)

              The background color of the button.

            • BorderRadius — (Integer)

              The border radius of the button.

            • ButtonActionrequired — (String)

              Action triggered by the button.

              Possible values include:
              • "LINK"
              • "DEEP_LINK"
              • "CLOSE"
            • Link — (String)

              Button destination.

            • Textrequired — (String)

              Button text.

            • TextColor — (String)

              The text color of the button.

          • IOS — (map)

            Default button content.

            • ButtonActionrequired — (String)

              Action triggered by the button.

              Possible values include:
              • "LINK"
              • "DEEP_LINK"
              • "CLOSE"
            • Link — (String)

              Button destination.

          • Web — (map)

            Default button content.

            • ButtonActionrequired — (String)

              Action triggered by the button.

              Possible values include:
              • "LINK"
              • "DEEP_LINK"
              • "CLOSE"
            • Link — (String)

              Button destination.

        • SecondaryBtn — (map)

          The second button inside message.

          • Android — (map)

            Default button content.

            • ButtonActionrequired — (String)

              Action triggered by the button.

              Possible values include:
              • "LINK"
              • "DEEP_LINK"
              • "CLOSE"
            • Link — (String)

              Button destination.

          • DefaultConfig — (map)

            Default button content.

            • BackgroundColor — (String)

              The background color of the button.

            • BorderRadius — (Integer)

              The border radius of the button.

            • ButtonActionrequired — (String)

              Action triggered by the button.

              Possible values include:
              • "LINK"
              • "DEEP_LINK"
              • "CLOSE"
            • Link — (String)

              Button destination.

            • Textrequired — (String)

              Button text.

            • TextColor — (String)

              The text color of the button.

          • IOS — (map)

            Default button content.

            • ButtonActionrequired — (String)

              Action triggered by the button.

              Possible values include:
              • "LINK"
              • "DEEP_LINK"
              • "CLOSE"
            • Link — (String)

              Button destination.

          • Web — (map)

            Default button content.

            • ButtonActionrequired — (String)

              Action triggered by the button.

              Possible values include:
              • "LINK"
              • "DEEP_LINK"
              • "CLOSE"
            • Link — (String)

              Button destination.

      • CustomConfig — (map<String>)

        Custom config to be sent to client.

      • Layout — (String)

        The layout of the message.

        Possible values include:
        • "BOTTOM_BANNER"
        • "TOP_BANNER"
        • "OVERLAYS"
        • "MOBILE_FEED"
        • "MIDDLE_BANNER"
        • "CAROUSEL"
      • tags — (map<String>)
        Note: As of 22-05-2023 tags has been deprecated for update operations. After this date any value in tags is not processed and an error code is not returned. To manage tags we recommend using either Tags in the API Reference for Amazon Pinpoint, resourcegroupstaggingapi commands in the AWS Command Line Interface Documentation or resourcegroupstaggingapi in the AWS SDK.

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

      • TemplateDescription — (String)

        The description of the template.

    • TemplateName — (String)

      The name of the message template. A template name must start with an alphanumeric character and can contain a maximum of 128 characters. The characters can be alphanumeric characters, underscores (_), or hyphens (-). Template names are case sensitive.

    • Version — (String)

      The unique identifier for the version of the message template to update, retrieve information about, or delete. To retrieve identifiers and other information for all the versions of a template, use the Template Versions resource.

      If specified, this value must match the identifier for an existing template version. If specified for an update operation, this value must match the identifier for the latest existing version of the template. This restriction helps ensure that race conditions don't occur.

      If you don't specify a value for this parameter, Amazon Pinpoint does the following:

      • For a get operation, retrieves information about the active version of the template.

      • For an update operation, saves the updates to (overwrites) the latest existing version of the template, if the create-new-version parameter isn't used or is set to false.

      • For a delete operation, deletes the template, including all versions of the template.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • MessageBody — (map)

        Provides information about an API request or response.

        • Message — (String)

          The message that's returned from the API.

        • RequestID — (String)

          The unique identifier for the request or response.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

updateJourney(params = {}, callback) ⇒ AWS.Request

Updates the configuration and other settings for a journey.

Service Reference:

Examples:

Calling the updateJourney operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  JourneyId: 'STRING_VALUE', /* required */
  WriteJourneyRequest: { /* required */
    Name: 'STRING_VALUE', /* required */
    Activities: {
      '<__string>': {
        CUSTOM: {
          DeliveryUri: 'STRING_VALUE',
          EndpointTypes: [
            PUSH | GCM | APNS | APNS_SANDBOX | APNS_VOIP | APNS_VOIP_SANDBOX | ADM | SMS | VOICE | EMAIL | BAIDU | CUSTOM | IN_APP,
            /* more items */
          ],
          MessageConfig: {
            Data: 'STRING_VALUE'
          },
          NextActivity: 'STRING_VALUE',
          TemplateName: 'STRING_VALUE',
          TemplateVersion: 'STRING_VALUE'
        },
        ConditionalSplit: {
          Condition: {
            Conditions: [
              {
                EventCondition: {
                  Dimensions: {
                    Attributes: {
                      '<__string>': {
                        Values: [ /* required */
                          'STRING_VALUE',
                          /* more items */
                        ],
                        AttributeType: INCLUSIVE | EXCLUSIVE | CONTAINS | BEFORE | AFTER | ON | BETWEEN
                      },
                      /* '<__string>': ... */
                    },
                    EventType: {
                      Values: [ /* required */
                        'STRING_VALUE',
                        /* more items */
                      ],
                      DimensionType: INCLUSIVE | EXCLUSIVE
                    },
                    Metrics: {
                      '<__string>': {
                        ComparisonOperator: 'STRING_VALUE', /* required */
                        Value: 'NUMBER_VALUE' /* required */
                      },
                      /* '<__string>': ... */
                    }
                  },
                  MessageActivity: 'STRING_VALUE'
                },
                SegmentCondition: {
                  SegmentId: 'STRING_VALUE' /* required */
                },
                SegmentDimensions: {
                  Attributes: {
                    '<__string>': {
                      Values: [ /* required */
                        'STRING_VALUE',
                        /* more items */
                      ],
                      AttributeType: INCLUSIVE | EXCLUSIVE | CONTAINS | BEFORE | AFTER | ON | BETWEEN
                    },
                    /* '<__string>': ... */
                  },
                  Behavior: {
                    Recency: {
                      Duration: HR_24 | DAY_7 | DAY_14 | DAY_30, /* required */
                      RecencyType: ACTIVE | INACTIVE /* required */
                    }
                  },
                  Demographic: {
                    AppVersion: {
                      Values: [ /* required */
                        'STRING_VALUE',
                        /* more items */
                      ],
                      DimensionType: INCLUSIVE | EXCLUSIVE
                    },
                    Channel: {
                      Values: [ /* required */
                        'STRING_VALUE',
                        /* more items */
                      ],
                      DimensionType: INCLUSIVE | EXCLUSIVE
                    },
                    DeviceType: {
                      Values: [ /* required */
                        'STRING_VALUE',
                        /* more items */
                      ],
                      DimensionType: INCLUSIVE | EXCLUSIVE
                    },
                    Make: {
                      Values: [ /* required */
                        'STRING_VALUE',
                        /* more items */
                      ],
                      DimensionType: INCLUSIVE | EXCLUSIVE
                    },
                    Model: {
                      Values: [ /* required */
                        'STRING_VALUE',
                        /* more items */
                      ],
                      DimensionType: INCLUSIVE | EXCLUSIVE
                    },
                    Platform: {
                      Values: [ /* required */
                        'STRING_VALUE',
                        /* more items */
                      ],
                      DimensionType: INCLUSIVE | EXCLUSIVE
                    }
                  },
                  Location: {
                    Country: {
                      Values: [ /* required */
                        'STRING_VALUE',
                        /* more items */
                      ],
                      DimensionType: INCLUSIVE | EXCLUSIVE
                    },
                    GPSPoint: {
                      Coordinates: { /* required */
                        Latitude: 'NUMBER_VALUE', /* required */
                        Longitude: 'NUMBER_VALUE' /* required */
                      },
                      RangeInKilometers: 'NUMBER_VALUE'
                    }
                  },
                  Metrics: {
                    '<__string>': {
                      ComparisonOperator: 'STRING_VALUE', /* required */
                      Value: 'NUMBER_VALUE' /* required */
                    },
                    /* '<__string>': ... */
                  },
                  UserAttributes: {
                    '<__string>': {
                      Values: [ /* required */
                        'STRING_VALUE',
                        /* more items */
                      ],
                      AttributeType: INCLUSIVE | EXCLUSIVE | CONTAINS | BEFORE | AFTER | ON | BETWEEN
                    },
                    /* '<__string>': ... */
                  }
                }
              },
              /* more items */
            ],
            Operator: ALL | ANY
          },
          EvaluationWaitTime: {
            WaitFor: 'STRING_VALUE',
            WaitUntil: 'STRING_VALUE'
          },
          FalseActivity: 'STRING_VALUE',
          TrueActivity: 'STRING_VALUE'
        },
        ContactCenter: {
          NextActivity: 'STRING_VALUE'
        },
        Description: 'STRING_VALUE',
        EMAIL: {
          MessageConfig: {
            FromAddress: 'STRING_VALUE'
          },
          NextActivity: 'STRING_VALUE',
          TemplateName: 'STRING_VALUE',
          TemplateVersion: 'STRING_VALUE'
        },
        Holdout: {
          Percentage: 'NUMBER_VALUE', /* required */
          NextActivity: 'STRING_VALUE'
        },
        MultiCondition: {
          Branches: [
            {
              Condition: {
                EventCondition: {
                  Dimensions: {
                    Attributes: {
                      '<__string>': {
                        Values: [ /* required */
                          'STRING_VALUE',
                          /* more items */
                        ],
                        AttributeType: INCLUSIVE | EXCLUSIVE | CONTAINS | BEFORE | AFTER | ON | BETWEEN
                      },
                      /* '<__string>': ... */
                    },
                    EventType: {
                      Values: [ /* required */
                        'STRING_VALUE',
                        /* more items */
                      ],
                      DimensionType: INCLUSIVE | EXCLUSIVE
                    },
                    Metrics: {
                      '<__string>': {
                        ComparisonOperator: 'STRING_VALUE', /* required */
                        Value: 'NUMBER_VALUE' /* required */
                      },
                      /* '<__string>': ... */
                    }
                  },
                  MessageActivity: 'STRING_VALUE'
                },
                SegmentCondition: {
                  SegmentId: 'STRING_VALUE' /* required */
                },
                SegmentDimensions: {
                  Attributes: {
                    '<__string>': {
                      Values: [ /* required */
                        'STRING_VALUE',
                        /* more items */
                      ],
                      AttributeType: INCLUSIVE | EXCLUSIVE | CONTAINS | BEFORE | AFTER | ON | BETWEEN
                    },
                    /* '<__string>': ... */
                  },
                  Behavior: {
                    Recency: {
                      Duration: HR_24 | DAY_7 | DAY_14 | DAY_30, /* required */
                      RecencyType: ACTIVE | INACTIVE /* required */
                    }
                  },
                  Demographic: {
                    AppVersion: {
                      Values: [ /* required */
                        'STRING_VALUE',
                        /* more items */
                      ],
                      DimensionType: INCLUSIVE | EXCLUSIVE
                    },
                    Channel: {
                      Values: [ /* required */
                        'STRING_VALUE',
                        /* more items */
                      ],
                      DimensionType: INCLUSIVE | EXCLUSIVE
                    },
                    DeviceType: {
                      Values: [ /* required */
                        'STRING_VALUE',
                        /* more items */
                      ],
                      DimensionType: INCLUSIVE | EXCLUSIVE
                    },
                    Make: {
                      Values: [ /* required */
                        'STRING_VALUE',
                        /* more items */
                      ],
                      DimensionType: INCLUSIVE | EXCLUSIVE
                    },
                    Model: {
                      Values: [ /* required */
                        'STRING_VALUE',
                        /* more items */
                      ],
                      DimensionType: INCLUSIVE | EXCLUSIVE
                    },
                    Platform: {
                      Values: [ /* required */
                        'STRING_VALUE',
                        /* more items */
                      ],
                      DimensionType: INCLUSIVE | EXCLUSIVE
                    }
                  },
                  Location: {
                    Country: {
                      Values: [ /* required */
                        'STRING_VALUE',
                        /* more items */
                      ],
                      DimensionType: INCLUSIVE | EXCLUSIVE
                    },
                    GPSPoint: {
                      Coordinates: { /* required */
                        Latitude: 'NUMBER_VALUE', /* required */
                        Longitude: 'NUMBER_VALUE' /* required */
                      },
                      RangeInKilometers: 'NUMBER_VALUE'
                    }
                  },
                  Metrics: {
                    '<__string>': {
                      ComparisonOperator: 'STRING_VALUE', /* required */
                      Value: 'NUMBER_VALUE' /* required */
                    },
                    /* '<__string>': ... */
                  },
                  UserAttributes: {
                    '<__string>': {
                      Values: [ /* required */
                        'STRING_VALUE',
                        /* more items */
                      ],
                      AttributeType: INCLUSIVE | EXCLUSIVE | CONTAINS | BEFORE | AFTER | ON | BETWEEN
                    },
                    /* '<__string>': ... */
                  }
                }
              },
              NextActivity: 'STRING_VALUE'
            },
            /* more items */
          ],
          DefaultActivity: 'STRING_VALUE',
          EvaluationWaitTime: {
            WaitFor: 'STRING_VALUE',
            WaitUntil: 'STRING_VALUE'
          }
        },
        PUSH: {
          MessageConfig: {
            TimeToLive: 'STRING_VALUE'
          },
          NextActivity: 'STRING_VALUE',
          TemplateName: 'STRING_VALUE',
          TemplateVersion: 'STRING_VALUE'
        },
        RandomSplit: {
          Branches: [
            {
              NextActivity: 'STRING_VALUE',
              Percentage: 'NUMBER_VALUE'
            },
            /* more items */
          ]
        },
        SMS: {
          MessageConfig: {
            EntityId: 'STRING_VALUE',
            MessageType: TRANSACTIONAL | PROMOTIONAL,
            OriginationNumber: 'STRING_VALUE',
            SenderId: 'STRING_VALUE',
            TemplateId: 'STRING_VALUE'
          },
          NextActivity: 'STRING_VALUE',
          TemplateName: 'STRING_VALUE',
          TemplateVersion: 'STRING_VALUE'
        },
        Wait: {
          NextActivity: 'STRING_VALUE',
          WaitTime: {
            WaitFor: 'STRING_VALUE',
            WaitUntil: 'STRING_VALUE'
          }
        }
      },
      /* '<__string>': ... */
    },
    ClosedDays: {
      CUSTOM: [
        {
          EndDateTime: 'STRING_VALUE',
          Name: 'STRING_VALUE',
          StartDateTime: 'STRING_VALUE'
        },
        /* more items */
      ],
      EMAIL: [
        {
          EndDateTime: 'STRING_VALUE',
          Name: 'STRING_VALUE',
          StartDateTime: 'STRING_VALUE'
        },
        /* more items */
      ],
      PUSH: [
        {
          EndDateTime: 'STRING_VALUE',
          Name: 'STRING_VALUE',
          StartDateTime: 'STRING_VALUE'
        },
        /* more items */
      ],
      SMS: [
        {
          EndDateTime: 'STRING_VALUE',
          Name: 'STRING_VALUE',
          StartDateTime: 'STRING_VALUE'
        },
        /* more items */
      ],
      VOICE: [
        {
          EndDateTime: 'STRING_VALUE',
          Name: 'STRING_VALUE',
          StartDateTime: 'STRING_VALUE'
        },
        /* more items */
      ]
    },
    CreationDate: 'STRING_VALUE',
    JourneyChannelSettings: {
      ConnectCampaignArn: 'STRING_VALUE',
      ConnectCampaignExecutionRoleArn: 'STRING_VALUE'
    },
    LastModifiedDate: 'STRING_VALUE',
    Limits: {
      DailyCap: 'NUMBER_VALUE',
      EndpointReentryCap: 'NUMBER_VALUE',
      EndpointReentryInterval: 'STRING_VALUE',
      MessagesPerSecond: 'NUMBER_VALUE',
      TimeframeCap: {
        Cap: 'NUMBER_VALUE',
        Days: 'NUMBER_VALUE'
      },
      TotalCap: 'NUMBER_VALUE'
    },
    LocalTime: true || false,
    OpenHours: {
      CUSTOM: {
        '<DayOfWeek>': [
          {
            EndTime: 'STRING_VALUE',
            StartTime: 'STRING_VALUE'
          },
          /* more items */
        ],
        /* '<DayOfWeek>': ... */
      },
      EMAIL: {
        '<DayOfWeek>': [
          {
            EndTime: 'STRING_VALUE',
            StartTime: 'STRING_VALUE'
          },
          /* more items */
        ],
        /* '<DayOfWeek>': ... */
      },
      PUSH: {
        '<DayOfWeek>': [
          {
            EndTime: 'STRING_VALUE',
            StartTime: 'STRING_VALUE'
          },
          /* more items */
        ],
        /* '<DayOfWeek>': ... */
      },
      SMS: {
        '<DayOfWeek>': [
          {
            EndTime: 'STRING_VALUE',
            StartTime: 'STRING_VALUE'
          },
          /* more items */
        ],
        /* '<DayOfWeek>': ... */
      },
      VOICE: {
        '<DayOfWeek>': [
          {
            EndTime: 'STRING_VALUE',
            StartTime: 'STRING_VALUE'
          },
          /* more items */
        ],
        /* '<DayOfWeek>': ... */
      }
    },
    QuietTime: {
      End: 'STRING_VALUE',
      Start: 'STRING_VALUE'
    },
    RefreshFrequency: 'STRING_VALUE',
    RefreshOnSegmentUpdate: true || false,
    Schedule: {
      EndTime: new Date || 'Wed Dec 31 1969 16:00:00 GMT-0800 (PST)' || 123456789,
      StartTime: new Date || 'Wed Dec 31 1969 16:00:00 GMT-0800 (PST)' || 123456789,
      Timezone: 'STRING_VALUE'
    },
    SendingSchedule: true || false,
    StartActivity: 'STRING_VALUE',
    StartCondition: {
      Description: 'STRING_VALUE',
      EventStartCondition: {
        EventFilter: {
          Dimensions: { /* required */
            Attributes: {
              '<__string>': {
                Values: [ /* required */
                  'STRING_VALUE',
                  /* more items */
                ],
                AttributeType: INCLUSIVE | EXCLUSIVE | CONTAINS | BEFORE | AFTER | ON | BETWEEN
              },
              /* '<__string>': ... */
            },
            EventType: {
              Values: [ /* required */
                'STRING_VALUE',
                /* more items */
              ],
              DimensionType: INCLUSIVE | EXCLUSIVE
            },
            Metrics: {
              '<__string>': {
                ComparisonOperator: 'STRING_VALUE', /* required */
                Value: 'NUMBER_VALUE' /* required */
              },
              /* '<__string>': ... */
            }
          },
          FilterType: SYSTEM | ENDPOINT /* required */
        },
        SegmentId: 'STRING_VALUE'
      },
      SegmentStartCondition: {
        SegmentId: 'STRING_VALUE' /* required */
      }
    },
    State: DRAFT | ACTIVE | COMPLETED | CANCELLED | CLOSED | PAUSED,
    TimezoneEstimationMethods: [
      PHONE_NUMBER | POSTAL_CODE,
      /* more items */
    ],
    WaitForQuietTime: true || false
  }
};
pinpoint.updateJourney(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • JourneyId — (String)

      The unique identifier for the journey.

    • WriteJourneyRequest — (map)

      Specifies the configuration and other settings for a journey.

      • Activities — (map<map>)

        A map that contains a set of Activity objects, one object for each activity in the journey. For each Activity object, the key is the unique identifier (string) for an activity and the value is the settings for the activity. An activity identifier can contain a maximum of 100 characters. The characters must be alphanumeric characters.

        • CUSTOM — (map)

          The settings for a custom message activity. This type of activity calls an AWS Lambda function or web hook that sends messages to participants.

          • DeliveryUri — (String)

            The destination to send the campaign or treatment to. This value can be one of the following:

            • The name or Amazon Resource Name (ARN) of an AWS Lambda function to invoke to handle delivery of the campaign or treatment.

            • The URL for a web application or service that supports HTTPS and can receive the message. The URL has to be a full URL, including the HTTPS protocol.

          • EndpointTypes — (Array<String>)

            The types of endpoints to send the custom message to. Each valid value maps to a type of channel that you can associate with an endpoint by using the ChannelType property of an endpoint.

          • MessageConfig — (map)

            Specifies the message data included in a custom channel message that's sent to participants in a journey.

            • Data — (String)

              The message content that's passed to an AWS Lambda function or to a web hook.

          • NextActivity — (String)

            The unique identifier for the next activity to perform, after Amazon Pinpoint calls the AWS Lambda function or web hook.

          • TemplateName — (String)

            The name of the custom message template to use for the message. If specified, this value must match the name of an existing message template.

          • TemplateVersion — (String)

            The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

            If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

        • ConditionalSplit — (map)

          The settings for a yes/no split activity. This type of activity sends participants down one of two paths in a journey, based on conditions that you specify.

          • Condition — (map)

            The conditions that define the paths for the activity, and the relationship between the conditions.

            • Conditions — (Array<map>)

              The conditions to evaluate for the activity.

              • EventCondition — (map)

                The dimension settings for the event that's associated with the activity.

                • Dimensions — (map)

                  The dimensions for the event filter to use for the activity.

                  • Attributes — (map<map>)

                    One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                    • AttributeType — (String)

                      The type of segment dimension to use. Valid values are:

                      • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                      • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                      • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                      • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                      • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                      • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                      • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                      • Possible values include:
                        • "INCLUSIVE"
                        • "EXCLUSIVE"
                        • "CONTAINS"
                        • "BEFORE"
                        • "AFTER"
                        • "ON"
                        • "BETWEEN"
                      • Valuesrequired — (Array<String>)

                        The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                    • EventType — (map)

                      The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                      • DimensionType — (String)

                        The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                        Possible values include:
                        • "INCLUSIVE"
                        • "EXCLUSIVE"
                      • Valuesrequired — (Array<String>)

                        The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                    • Metrics — (map<map>)

                      One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                      • ComparisonOperatorrequired — (String)

                        The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                      • Valuerequired — (Float)

                        The value to compare.

                  • MessageActivity — (String)

                    The message identifier (message_id) for the message to use when determining whether message events meet the condition.

                • SegmentCondition — (map)

                  The segment that's associated with the activity.

                  • SegmentIdrequired — (String)

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

                • SegmentDimensions — (map)

                  The dimension settings for the segment that's associated with the activity.

                  • Attributes — (map<map>)

                    One or more custom attributes to use as criteria for the segment.

                    • AttributeType — (String)

                      The type of segment dimension to use. Valid values are:

                      • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                      • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                      • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                      • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                      • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                      • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                      • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                      • Possible values include:
                        • "INCLUSIVE"
                        • "EXCLUSIVE"
                        • "CONTAINS"
                        • "BEFORE"
                        • "AFTER"
                        • "ON"
                        • "BETWEEN"
                      • Valuesrequired — (Array<String>)

                        The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                    • Behavior — (map)

                      The behavior-based criteria, such as how recently users have used your app, for the segment.

                      • Recency — (map)

                        The dimension settings that are based on how recently an endpoint was active.

                        • Durationrequired — (String)

                          The duration to use when determining whether an endpoint is active or inactive.

                          Possible values include:
                          • "HR_24"
                          • "DAY_7"
                          • "DAY_14"
                          • "DAY_30"
                        • RecencyTyperequired — (String)

                          The type of recency dimension to use for the segment. Valid values are: ACTIVE, endpoints that were active within the specified duration are included in the segment; and, INACTIVE, endpoints that weren't active within the specified duration are included in the segment.

                          Possible values include:
                          • "ACTIVE"
                          • "INACTIVE"
                    • Demographic — (map)

                      The demographic-based criteria, such as device platform, for the segment.

                      • AppVersion — (map)

                        The app version criteria for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • Channel — (map)

                        The channel criteria for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • DeviceType — (map)

                        The device type criteria for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • Make — (map)

                        The device make criteria for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • Model — (map)

                        The device model criteria for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • Platform — (map)

                        The device platform criteria for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                    • Location — (map)

                      The location-based criteria, such as region or GPS coordinates, for the segment.

                      • Country — (map)

                        The country or region code, in ISO 3166-1 alpha-2 format, for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • GPSPoint — (map)

                        The GPS location and range for the segment.

                        • Coordinatesrequired — (map)

                          The GPS coordinates to measure distance from.

                          • Latituderequired — (Float)

                            The latitude coordinate of the location.

                          • Longituderequired — (Float)

                            The longitude coordinate of the location.

                        • RangeInKilometers — (Float)

                          The range, in kilometers, from the GPS coordinates.

                    • Metrics — (map<map>)

                      One or more custom metrics to use as criteria for the segment.

                      • ComparisonOperatorrequired — (String)

                        The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                      • Valuerequired — (Float)

                        The value to compare.

                    • UserAttributes — (map<map>)

                      One or more custom user attributes to use as criteria for the segment.

                      • AttributeType — (String)

                        The type of segment dimension to use. Valid values are:

                        • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                        • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                        • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                        • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                        • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                        • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                        • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                        • Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                          • "CONTAINS"
                          • "BEFORE"
                          • "AFTER"
                          • "ON"
                          • "BETWEEN"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                  • Operator — (String)

                    Specifies how to handle multiple conditions for the activity. For example, if you specify two conditions for an activity, whether both or only one of the conditions must be met for the activity to be performed.

                    Possible values include:
                    • "ALL"
                    • "ANY"
                • EvaluationWaitTime — (map)

                  The amount of time to wait before determining whether the conditions are met, or the date and time when Amazon Pinpoint determines whether the conditions are met.

                  • WaitFor — (String)

                    The amount of time to wait, as a duration in ISO 8601 format, before determining whether the activity's conditions have been met or moving participants to the next activity in the journey.

                  • WaitUntil — (String)

                    The date and time, in ISO 8601 format, when Amazon Pinpoint determines whether the activity's conditions have been met or the activity moves participants to the next activity in the journey.

                • FalseActivity — (String)

                  The unique identifier for the activity to perform if the conditions aren't met.

                • TrueActivity — (String)

                  The unique identifier for the activity to perform if the conditions are met.

              • Description — (String)

                The custom description of the activity.

              • EMAIL — (map)

                The settings for an email activity. This type of activity sends an email message to participants.

                • MessageConfig — (map)

                  Specifies the sender address for an email message that's sent to participants in the journey.

                  • FromAddress — (String)

                    The verified email address to send the email message from. The default address is the FromAddress specified for the email channel for the application.

                • NextActivity — (String)

                  The unique identifier for the next activity to perform, after the message is sent.

                • TemplateName — (String)

                  The name of the email message template to use for the message. If specified, this value must match the name of an existing message template.

                • TemplateVersion — (String)

                  The unique identifier for the version of the email template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                  If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

              • Holdout — (map)

                The settings for a holdout activity. This type of activity stops a journey for a specified percentage of participants.

                • NextActivity — (String)

                  The unique identifier for the next activity to perform, after performing the holdout activity.

                • Percentagerequired — (Integer)

                  The percentage of participants who shouldn't continue the journey.

                  To determine which participants are held out, Amazon Pinpoint applies a probability-based algorithm to the percentage that you specify. Therefore, the actual percentage of participants who are held out may not be equal to the percentage that you specify.

              • MultiCondition — (map)

                The settings for a multivariate split activity. This type of activity sends participants down one of as many as five paths (including a default Else path) in a journey, based on conditions that you specify.

                • Branches — (Array<map>)

                  The paths for the activity, including the conditions for entering each path and the activity to perform for each path.

                  • Condition — (map)

                    The condition to evaluate for the activity path.

                    • EventCondition — (map)

                      The dimension settings for the event that's associated with the activity.

                      • Dimensions — (map)

                        The dimensions for the event filter to use for the activity.

                        • Attributes — (map<map>)

                          One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                          • AttributeType — (String)

                            The type of segment dimension to use. Valid values are:

                            • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                            • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                            • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                            • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                            • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                            • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                            • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                            • Possible values include:
                              • "INCLUSIVE"
                              • "EXCLUSIVE"
                              • "CONTAINS"
                              • "BEFORE"
                              • "AFTER"
                              • "ON"
                              • "BETWEEN"
                            • Valuesrequired — (Array<String>)

                              The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                          • EventType — (map)

                            The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                            • DimensionType — (String)

                              The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                              Possible values include:
                              • "INCLUSIVE"
                              • "EXCLUSIVE"
                            • Valuesrequired — (Array<String>)

                              The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                          • Metrics — (map<map>)

                            One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                            • ComparisonOperatorrequired — (String)

                              The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                            • Valuerequired — (Float)

                              The value to compare.

                        • MessageActivity — (String)

                          The message identifier (message_id) for the message to use when determining whether message events meet the condition.

                      • SegmentCondition — (map)

                        The segment that's associated with the activity.

                        • SegmentIdrequired — (String)

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

                      • SegmentDimensions — (map)

                        The dimension settings for the segment that's associated with the activity.

                        • Attributes — (map<map>)

                          One or more custom attributes to use as criteria for the segment.

                          • AttributeType — (String)

                            The type of segment dimension to use. Valid values are:

                            • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                            • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                            • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                            • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                            • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                            • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                            • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                            • Possible values include:
                              • "INCLUSIVE"
                              • "EXCLUSIVE"
                              • "CONTAINS"
                              • "BEFORE"
                              • "AFTER"
                              • "ON"
                              • "BETWEEN"
                            • Valuesrequired — (Array<String>)

                              The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                          • Behavior — (map)

                            The behavior-based criteria, such as how recently users have used your app, for the segment.

                            • Recency — (map)

                              The dimension settings that are based on how recently an endpoint was active.

                              • Durationrequired — (String)

                                The duration to use when determining whether an endpoint is active or inactive.

                                Possible values include:
                                • "HR_24"
                                • "DAY_7"
                                • "DAY_14"
                                • "DAY_30"
                              • RecencyTyperequired — (String)

                                The type of recency dimension to use for the segment. Valid values are: ACTIVE, endpoints that were active within the specified duration are included in the segment; and, INACTIVE, endpoints that weren't active within the specified duration are included in the segment.

                                Possible values include:
                                • "ACTIVE"
                                • "INACTIVE"
                          • Demographic — (map)

                            The demographic-based criteria, such as device platform, for the segment.

                            • AppVersion — (map)

                              The app version criteria for the segment.

                              • DimensionType — (String)

                                The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                Possible values include:
                                • "INCLUSIVE"
                                • "EXCLUSIVE"
                              • Valuesrequired — (Array<String>)

                                The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                            • Channel — (map)

                              The channel criteria for the segment.

                              • DimensionType — (String)

                                The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                Possible values include:
                                • "INCLUSIVE"
                                • "EXCLUSIVE"
                              • Valuesrequired — (Array<String>)

                                The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                            • DeviceType — (map)

                              The device type criteria for the segment.

                              • DimensionType — (String)

                                The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                Possible values include:
                                • "INCLUSIVE"
                                • "EXCLUSIVE"
                              • Valuesrequired — (Array<String>)

                                The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                            • Make — (map)

                              The device make criteria for the segment.

                              • DimensionType — (String)

                                The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                Possible values include:
                                • "INCLUSIVE"
                                • "EXCLUSIVE"
                              • Valuesrequired — (Array<String>)

                                The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                            • Model — (map)

                              The device model criteria for the segment.

                              • DimensionType — (String)

                                The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                Possible values include:
                                • "INCLUSIVE"
                                • "EXCLUSIVE"
                              • Valuesrequired — (Array<String>)

                                The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                            • Platform — (map)

                              The device platform criteria for the segment.

                              • DimensionType — (String)

                                The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                Possible values include:
                                • "INCLUSIVE"
                                • "EXCLUSIVE"
                              • Valuesrequired — (Array<String>)

                                The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                          • Location — (map)

                            The location-based criteria, such as region or GPS coordinates, for the segment.

                            • Country — (map)

                              The country or region code, in ISO 3166-1 alpha-2 format, for the segment.

                              • DimensionType — (String)

                                The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                Possible values include:
                                • "INCLUSIVE"
                                • "EXCLUSIVE"
                              • Valuesrequired — (Array<String>)

                                The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                            • GPSPoint — (map)

                              The GPS location and range for the segment.

                              • Coordinatesrequired — (map)

                                The GPS coordinates to measure distance from.

                                • Latituderequired — (Float)

                                  The latitude coordinate of the location.

                                • Longituderequired — (Float)

                                  The longitude coordinate of the location.

                              • RangeInKilometers — (Float)

                                The range, in kilometers, from the GPS coordinates.

                          • Metrics — (map<map>)

                            One or more custom metrics to use as criteria for the segment.

                            • ComparisonOperatorrequired — (String)

                              The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                            • Valuerequired — (Float)

                              The value to compare.

                          • UserAttributes — (map<map>)

                            One or more custom user attributes to use as criteria for the segment.

                            • AttributeType — (String)

                              The type of segment dimension to use. Valid values are:

                              • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                              • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                              • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                              • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                              • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                              • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                              • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                              • Possible values include:
                                • "INCLUSIVE"
                                • "EXCLUSIVE"
                                • "CONTAINS"
                                • "BEFORE"
                                • "AFTER"
                                • "ON"
                                • "BETWEEN"
                              • Valuesrequired — (Array<String>)

                                The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                        • NextActivity — (String)

                          The unique identifier for the next activity to perform, after completing the activity for the path.

                      • DefaultActivity — (String)

                        The unique identifier for the activity to perform for participants who don't meet any of the conditions specified for other paths in the activity.

                      • EvaluationWaitTime — (map)

                        The amount of time to wait or the date and time when Amazon Pinpoint determines whether the conditions are met.

                        • WaitFor — (String)

                          The amount of time to wait, as a duration in ISO 8601 format, before determining whether the activity's conditions have been met or moving participants to the next activity in the journey.

                        • WaitUntil — (String)

                          The date and time, in ISO 8601 format, when Amazon Pinpoint determines whether the activity's conditions have been met or the activity moves participants to the next activity in the journey.

                    • PUSH — (map)

                      The settings for a push notification activity. This type of activity sends a push notification to participants.

                      • MessageConfig — (map)

                        Specifies the time to live (TTL) value for push notifications that are sent to participants in a journey.

                        • TimeToLive — (String)

                          The number of seconds that the push notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                          This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

                      • NextActivity — (String)

                        The unique identifier for the next activity to perform, after the message is sent.

                      • TemplateName — (String)

                        The name of the push notification template to use for the message. If specified, this value must match the name of an existing message template.

                      • TemplateVersion — (String)

                        The unique identifier for the version of the push notification template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                        If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

                    • RandomSplit — (map)

                      The settings for a random split activity. This type of activity randomly sends specified percentages of participants down one of as many as five paths in a journey, based on conditions that you specify.

                      • Branches — (Array<map>)

                        The paths for the activity, including the percentage of participants to enter each path and the activity to perform for each path.

                        • NextActivity — (String)

                          The unique identifier for the next activity to perform, after completing the activity for the path.

                        • Percentage — (Integer)

                          The percentage of participants to send down the activity path.

                          To determine which participants are sent down each path, Amazon Pinpoint applies a probability-based algorithm to the percentages that you specify for the paths. Therefore, the actual percentage of participants who are sent down a path may not be equal to the percentage that you specify.

                    • SMS — (map)

                      The settings for an SMS activity. This type of activity sends a text message to participants.

                      • MessageConfig — (map)

                        Specifies the sender ID and message type for an SMS message that's sent to participants in a journey.

                        • MessageType — (String)

                          The SMS message type. Valid values are TRANSACTIONAL (for messages that are critical or time-sensitive, such as a one-time passwords) and PROMOTIONAL (for messsages that aren't critical or time-sensitive, such as marketing messages).

                          Possible values include:
                          • "TRANSACTIONAL"
                          • "PROMOTIONAL"
                        • OriginationNumber — (String)

                          The long code to send the SMS message from. This value should be one of the dedicated long codes that's assigned to your AWS account. Although it isn't required, we recommend that you specify the long code using an E.164 format to ensure prompt and accurate delivery of the message. For example, +12065550100.

                        • SenderId — (String)

                          The sender ID to display as the sender of the message on a recipient's device. Support for sender IDs varies by country or region. For more information, see Supported Countries and Regions in the Amazon Pinpoint User Guide.

                        • EntityId — (String)

                          The entity ID or Principal Entity (PE) id received from the regulatory body for sending SMS in your country.

                        • TemplateId — (String)

                          The template ID received from the regulatory body for sending SMS in your country.

                      • NextActivity — (String)

                        The unique identifier for the next activity to perform, after the message is sent.

                      • TemplateName — (String)

                        The name of the SMS message template to use for the message. If specified, this value must match the name of an existing message template.

                      • TemplateVersion — (String)

                        The unique identifier for the version of the SMS template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                        If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

                    • Wait — (map)

                      The settings for a wait activity. This type of activity waits for a certain amount of time or until a specific date and time before moving participants to the next activity in a journey.

                      • NextActivity — (String)

                        The unique identifier for the next activity to perform, after performing the wait activity.

                      • WaitTime — (map)

                        The amount of time to wait or the date and time when the activity moves participants to the next activity in the journey.

                        • WaitFor — (String)

                          The amount of time to wait, as a duration in ISO 8601 format, before determining whether the activity's conditions have been met or moving participants to the next activity in the journey.

                        • WaitUntil — (String)

                          The date and time, in ISO 8601 format, when Amazon Pinpoint determines whether the activity's conditions have been met or the activity moves participants to the next activity in the journey.

                    • ContactCenter — (map)

                      The settings for a connect activity. This type of activity initiates a contact center call to participants.

                      • NextActivity — (String)

                        The unique identifier for the next activity to perform after the this activity.

                  • CreationDate — (String)

                    The date, in ISO 8601 format, when the journey was created.

                  • LastModifiedDate — (String)

                    The date, in ISO 8601 format, when the journey was last modified.

                  • Limits — (map)

                    The messaging and entry limits for the journey.

                    • DailyCap — (Integer)

                      The maximum number of messages that the journey can send to a single participant during a 24-hour period. The maximum value is 100.

                    • EndpointReentryCap — (Integer)

                      The maximum number of times that a participant can enter the journey. The maximum value is 100. To allow participants to enter the journey an unlimited number of times, set this value to 0.

                    • MessagesPerSecond — (Integer)

                      The maximum number of messages that the journey can send each second.

                    • EndpointReentryInterval — (String)

                      Minimum time that must pass before an endpoint can re-enter a given journey. The duration should use an ISO 8601 format, such as PT1H.

                    • TimeframeCap — (map)

                      The number of messages that an endpoint can receive during the specified timeframe.

                      • Cap — (Integer)

                        The maximum number of messages that all journeys can send to an endpoint during the specified timeframe. The maximum value is 100. If set to 0, this limit will not apply.

                      • Days — (Integer)

                        The length of the timeframe in days. The maximum value is 30. If set to 0, this limit will not apply.

                    • TotalCap — (Integer)

                      The maximum number of messages a journey can sent to a single endpoint. The maximum value is 100. If set to 0, this limit will not apply.

                  • LocalTime — (Boolean)

                    Specifies whether the journey's scheduled start and end times use each participant's local time. To base the schedule on each participant's local time, set this value to true.

                  • Namerequired — (String)

                    The name of the journey. A journey name can contain a maximum of 150 characters. The characters can be alphanumeric characters or symbols, such as underscores (_) or hyphens (-). A journey name can't contain any spaces.

                  • QuietTime — (map)

                    The quiet time settings for the journey. Quiet time is a specific time range when a journey doesn't send messages to participants, if all the following conditions are met:

                    • The EndpointDemographic.Timezone property of the endpoint for the participant is set to a valid value.

                    • The current time in the participant's time zone is later than or equal to the time specified by the QuietTime.Start property for the journey.

                    • The current time in the participant's time zone is earlier than or equal to the time specified by the QuietTime.End property for the journey.

                    If any of the preceding conditions isn't met, the participant will receive messages from the journey, even if quiet time is enabled.

                    • End — (String)

                      The specific time when quiet time ends. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

                    • Start — (String)

                      The specific time when quiet time begins. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

                  • RefreshFrequency — (String)

                    The frequency with which Amazon Pinpoint evaluates segment and event data for the journey, as a duration in ISO 8601 format.

                  • Schedule — (map)

                    The schedule settings for the journey.

                    • EndTime — (Date)

                      The scheduled time, in ISO 8601 format, when the journey ended or will end.

                    • StartTime — (Date)

                      The scheduled time, in ISO 8601 format, when the journey began or will begin.

                    • Timezone — (String)

                      The starting UTC offset for the journey schedule, if the value of the journey's LocalTime property is true. Valid values are: UTC, UTC+01, UTC+02, UTC+03, UTC+03:30, UTC+04, UTC+04:30, UTC+05, UTC+05:30, UTC+05:45, UTC+06, UTC+06:30, UTC+07, UTC+08, UTC+08:45, UTC+09, UTC+09:30, UTC+10, UTC+10:30, UTC+11, UTC+12, UTC+12:45, UTC+13, UTC+13:45, UTC-02, UTC-02:30, UTC-03, UTC-03:30, UTC-04, UTC-05, UTC-06, UTC-07, UTC-08, UTC-09, UTC-09:30, UTC-10, and UTC-11.

                  • StartActivity — (String)

                    The unique identifier for the first activity in the journey. The identifier for this activity can contain a maximum of 128 characters. The characters must be alphanumeric characters.

                  • StartCondition — (map)

                    The segment that defines which users are participants in the journey.

                    • Description — (String)

                      The custom description of the condition.

                    • EventStartCondition — (map)

                      Specifies the settings for an event that causes a journey activity to start.

                      • EventFilter — (map)

                        Specifies the settings for an event that causes a campaign to be sent or a journey activity to be performed.

                        • Dimensionsrequired — (map)

                          The dimensions for the event filter to use for the campaign or the journey activity.

                          • Attributes — (map<map>)

                            One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                            • AttributeType — (String)

                              The type of segment dimension to use. Valid values are:

                              • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                              • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                              • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                              • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                              • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                              • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                              • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                              • Possible values include:
                                • "INCLUSIVE"
                                • "EXCLUSIVE"
                                • "CONTAINS"
                                • "BEFORE"
                                • "AFTER"
                                • "ON"
                                • "BETWEEN"
                              • Valuesrequired — (Array<String>)

                                The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                            • EventType — (map)

                              The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                              • DimensionType — (String)

                                The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                Possible values include:
                                • "INCLUSIVE"
                                • "EXCLUSIVE"
                              • Valuesrequired — (Array<String>)

                                The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                            • Metrics — (map<map>)

                              One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                              • ComparisonOperatorrequired — (String)

                                The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                              • Valuerequired — (Float)

                                The value to compare.

                          • FilterTyperequired — (String)

                            The type of event that causes the campaign to be sent or the journey activity to be performed. Valid values are: SYSTEM, sends the campaign or performs the activity when a system event occurs; and, ENDPOINT, sends the campaign or performs the activity when an endpoint event (Events resource) occurs.

                            Possible values include:
                            • "SYSTEM"
                            • "ENDPOINT"
                        • SegmentId — (String)
                      • SegmentStartCondition — (map)

                        The segment that's associated with the first activity in the journey. This segment determines which users are participants in the journey.

                        • SegmentIdrequired — (String)

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

                    • State — (String)

                      The status of the journey. Valid values are:

                      • DRAFT - Saves the journey and doesn't publish it.

                      • ACTIVE - Saves and publishes the journey. Depending on the journey's schedule, the journey starts running immediately or at the scheduled start time. If a journey's status is ACTIVE, you can't add, change, or remove activities from it.

                      PAUSED, CANCELLED, COMPLETED, and CLOSED states are not supported in requests to create or update a journey. To cancel, pause, or resume a journey, use the Journey State resource.

                      Possible values include:
                      • "DRAFT"
                      • "ACTIVE"
                      • "COMPLETED"
                      • "CANCELLED"
                      • "CLOSED"
                      • "PAUSED"
                    • WaitForQuietTime — (Boolean)

                      Specifies whether endpoints in quiet hours should enter a wait till the end of their quiet hours.

                    • RefreshOnSegmentUpdate — (Boolean)

                      Indicates whether the journey participants should be refreshed when a segment is updated.

                    • JourneyChannelSettings — (map)

                      The channel-specific configurations for the journey.

                      • ConnectCampaignArn — (String)

                        Amazon Resource Name (ARN) of the Connect Campaign.

                      • ConnectCampaignExecutionRoleArn — (String)

                        IAM role ARN to be assumed when invoking Connect campaign execution APIs for dialing.

                    • SendingSchedule — (Boolean)

                      Indicates if journey has Advance Quiet Time enabled. This flag should be set to true in order to allow using OpenHours and ClosedDays.

                    • OpenHours — (map)

                      The time when journey allow to send messages. QuietTime should be configured first and SendingSchedule should be set to true.

                      • EMAIL — (map<Array<map>>)

                        Specifies the schedule settings for the email channel.

                        • StartTime — (String)

                          The start of the scheduled time, in ISO 8601 format, when the channel can send messages.

                        • EndTime — (String)

                          The end of the scheduled time, in ISO 8601 format, when the channel can't send messages.

                      • SMS — (map<Array<map>>)

                        Specifies the schedule settings for the SMS channel.

                        • StartTime — (String)

                          The start of the scheduled time, in ISO 8601 format, when the channel can send messages.

                        • EndTime — (String)

                          The end of the scheduled time, in ISO 8601 format, when the channel can't send messages.

                      • PUSH — (map<Array<map>>)

                        Specifies the schedule settings for the push channel.

                        • StartTime — (String)

                          The start of the scheduled time, in ISO 8601 format, when the channel can send messages.

                        • EndTime — (String)

                          The end of the scheduled time, in ISO 8601 format, when the channel can't send messages.

                      • VOICE — (map<Array<map>>)

                        Specifies the schedule settings for the voice channel.

                        • StartTime — (String)

                          The start of the scheduled time, in ISO 8601 format, when the channel can send messages.

                        • EndTime — (String)

                          The end of the scheduled time, in ISO 8601 format, when the channel can't send messages.

                      • CUSTOM — (map<Array<map>>)

                        Specifies the schedule settings for the custom channel.

                        • StartTime — (String)

                          The start of the scheduled time, in ISO 8601 format, when the channel can send messages.

                        • EndTime — (String)

                          The end of the scheduled time, in ISO 8601 format, when the channel can't send messages.

                    • ClosedDays — (map)

                      The time when journey will stop sending messages. QuietTime should be configured first and SendingSchedule should be set to true.

                      • EMAIL — (Array<map>)

                        Rules for the Email channel.

                        • Name — (String)

                          The name of the closed day rule.

                        • StartDateTime — (String)

                          Start DateTime ISO 8601 format

                        • EndDateTime — (String)

                          End DateTime ISO 8601 format

                      • SMS — (Array<map>)

                        Rules for the SMS channel.

                        • Name — (String)

                          The name of the closed day rule.

                        • StartDateTime — (String)

                          Start DateTime ISO 8601 format

                        • EndDateTime — (String)

                          End DateTime ISO 8601 format

                      • PUSH — (Array<map>)

                        Rules for the Push channel.

                        • Name — (String)

                          The name of the closed day rule.

                        • StartDateTime — (String)

                          Start DateTime ISO 8601 format

                        • EndDateTime — (String)

                          End DateTime ISO 8601 format

                      • VOICE — (Array<map>)

                        Rules for the Voice channel.

                        • Name — (String)

                          The name of the closed day rule.

                        • StartDateTime — (String)

                          Start DateTime ISO 8601 format

                        • EndDateTime — (String)

                          End DateTime ISO 8601 format

                      • CUSTOM — (Array<map>)

                        Rules for the Custom channel.

                        • Name — (String)

                          The name of the closed day rule.

                        • StartDateTime — (String)

                          Start DateTime ISO 8601 format

                        • EndDateTime — (String)

                          End DateTime ISO 8601 format

                    • TimezoneEstimationMethods — (Array<String>)

                      An array of time zone estimation methods, if any, to use for determining an Endpoints time zone if the Endpoint does not have a value for the Demographic.Timezone attribute.

                      • PHONE_NUMBER - A time zone is determined based on the Endpoint.Address and Endpoint.Location.Country.

                      • POSTAL_CODE - A time zone is determined based on the Endpoint.Location.PostalCode and Endpoint.Location.Country.

                        Note: POSTAL_CODE detection is only supported in the United States, United Kingdom, Australia, New Zealand, Canada, France, Italy, Spain, Germany and in regions where Amazon Pinpoint is available.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • JourneyResponse — (map)

        Provides information about the status, configuration, and other settings for a journey.

        • Activities — (map<map>)

          A map that contains a set of Activity objects, one object for each activity in the journey. For each Activity object, the key is the unique identifier (string) for an activity and the value is the settings for the activity.

          • CUSTOM — (map)

            The settings for a custom message activity. This type of activity calls an AWS Lambda function or web hook that sends messages to participants.

            • DeliveryUri — (String)

              The destination to send the campaign or treatment to. This value can be one of the following:

              • The name or Amazon Resource Name (ARN) of an AWS Lambda function to invoke to handle delivery of the campaign or treatment.

              • The URL for a web application or service that supports HTTPS and can receive the message. The URL has to be a full URL, including the HTTPS protocol.

            • EndpointTypes — (Array<String>)

              The types of endpoints to send the custom message to. Each valid value maps to a type of channel that you can associate with an endpoint by using the ChannelType property of an endpoint.

            • MessageConfig — (map)

              Specifies the message data included in a custom channel message that's sent to participants in a journey.

              • Data — (String)

                The message content that's passed to an AWS Lambda function or to a web hook.

            • NextActivity — (String)

              The unique identifier for the next activity to perform, after Amazon Pinpoint calls the AWS Lambda function or web hook.

            • TemplateName — (String)

              The name of the custom message template to use for the message. If specified, this value must match the name of an existing message template.

            • TemplateVersion — (String)

              The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

              If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

          • ConditionalSplit — (map)

            The settings for a yes/no split activity. This type of activity sends participants down one of two paths in a journey, based on conditions that you specify.

            • Condition — (map)

              The conditions that define the paths for the activity, and the relationship between the conditions.

              • Conditions — (Array<map>)

                The conditions to evaluate for the activity.

                • EventCondition — (map)

                  The dimension settings for the event that's associated with the activity.

                  • Dimensions — (map)

                    The dimensions for the event filter to use for the activity.

                    • Attributes — (map<map>)

                      One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                      • AttributeType — (String)

                        The type of segment dimension to use. Valid values are:

                        • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                        • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                        • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                        • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                        • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                        • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                        • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                        • Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                          • "CONTAINS"
                          • "BEFORE"
                          • "AFTER"
                          • "ON"
                          • "BETWEEN"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                      • EventType — (map)

                        The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • Metrics — (map<map>)

                        One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                        • ComparisonOperatorrequired — (String)

                          The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                        • Valuerequired — (Float)

                          The value to compare.

                    • MessageActivity — (String)

                      The message identifier (message_id) for the message to use when determining whether message events meet the condition.

                  • SegmentCondition — (map)

                    The segment that's associated with the activity.

                    • SegmentIdrequired — (String)

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

                  • SegmentDimensions — (map)

                    The dimension settings for the segment that's associated with the activity.

                    • Attributes — (map<map>)

                      One or more custom attributes to use as criteria for the segment.

                      • AttributeType — (String)

                        The type of segment dimension to use. Valid values are:

                        • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                        • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                        • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                        • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                        • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                        • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                        • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                        • Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                          • "CONTAINS"
                          • "BEFORE"
                          • "AFTER"
                          • "ON"
                          • "BETWEEN"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                      • Behavior — (map)

                        The behavior-based criteria, such as how recently users have used your app, for the segment.

                        • Recency — (map)

                          The dimension settings that are based on how recently an endpoint was active.

                          • Durationrequired — (String)

                            The duration to use when determining whether an endpoint is active or inactive.

                            Possible values include:
                            • "HR_24"
                            • "DAY_7"
                            • "DAY_14"
                            • "DAY_30"
                          • RecencyTyperequired — (String)

                            The type of recency dimension to use for the segment. Valid values are: ACTIVE, endpoints that were active within the specified duration are included in the segment; and, INACTIVE, endpoints that weren't active within the specified duration are included in the segment.

                            Possible values include:
                            • "ACTIVE"
                            • "INACTIVE"
                      • Demographic — (map)

                        The demographic-based criteria, such as device platform, for the segment.

                        • AppVersion — (map)

                          The app version criteria for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • Channel — (map)

                          The channel criteria for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • DeviceType — (map)

                          The device type criteria for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • Make — (map)

                          The device make criteria for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • Model — (map)

                          The device model criteria for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • Platform — (map)

                          The device platform criteria for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • Location — (map)

                        The location-based criteria, such as region or GPS coordinates, for the segment.

                        • Country — (map)

                          The country or region code, in ISO 3166-1 alpha-2 format, for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • GPSPoint — (map)

                          The GPS location and range for the segment.

                          • Coordinatesrequired — (map)

                            The GPS coordinates to measure distance from.

                            • Latituderequired — (Float)

                              The latitude coordinate of the location.

                            • Longituderequired — (Float)

                              The longitude coordinate of the location.

                          • RangeInKilometers — (Float)

                            The range, in kilometers, from the GPS coordinates.

                      • Metrics — (map<map>)

                        One or more custom metrics to use as criteria for the segment.

                        • ComparisonOperatorrequired — (String)

                          The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                        • Valuerequired — (Float)

                          The value to compare.

                      • UserAttributes — (map<map>)

                        One or more custom user attributes to use as criteria for the segment.

                        • AttributeType — (String)

                          The type of segment dimension to use. Valid values are:

                          • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                          • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                          • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                          • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                          • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                          • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                          • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                          • Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                            • "CONTAINS"
                            • "BEFORE"
                            • "AFTER"
                            • "ON"
                            • "BETWEEN"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                    • Operator — (String)

                      Specifies how to handle multiple conditions for the activity. For example, if you specify two conditions for an activity, whether both or only one of the conditions must be met for the activity to be performed.

                      Possible values include:
                      • "ALL"
                      • "ANY"
                  • EvaluationWaitTime — (map)

                    The amount of time to wait before determining whether the conditions are met, or the date and time when Amazon Pinpoint determines whether the conditions are met.

                    • WaitFor — (String)

                      The amount of time to wait, as a duration in ISO 8601 format, before determining whether the activity's conditions have been met or moving participants to the next activity in the journey.

                    • WaitUntil — (String)

                      The date and time, in ISO 8601 format, when Amazon Pinpoint determines whether the activity's conditions have been met or the activity moves participants to the next activity in the journey.

                  • FalseActivity — (String)

                    The unique identifier for the activity to perform if the conditions aren't met.

                  • TrueActivity — (String)

                    The unique identifier for the activity to perform if the conditions are met.

                • Description — (String)

                  The custom description of the activity.

                • EMAIL — (map)

                  The settings for an email activity. This type of activity sends an email message to participants.

                  • MessageConfig — (map)

                    Specifies the sender address for an email message that's sent to participants in the journey.

                    • FromAddress — (String)

                      The verified email address to send the email message from. The default address is the FromAddress specified for the email channel for the application.

                  • NextActivity — (String)

                    The unique identifier for the next activity to perform, after the message is sent.

                  • TemplateName — (String)

                    The name of the email message template to use for the message. If specified, this value must match the name of an existing message template.

                  • TemplateVersion — (String)

                    The unique identifier for the version of the email template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                    If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

                • Holdout — (map)

                  The settings for a holdout activity. This type of activity stops a journey for a specified percentage of participants.

                  • NextActivity — (String)

                    The unique identifier for the next activity to perform, after performing the holdout activity.

                  • Percentagerequired — (Integer)

                    The percentage of participants who shouldn't continue the journey.

                    To determine which participants are held out, Amazon Pinpoint applies a probability-based algorithm to the percentage that you specify. Therefore, the actual percentage of participants who are held out may not be equal to the percentage that you specify.

                • MultiCondition — (map)

                  The settings for a multivariate split activity. This type of activity sends participants down one of as many as five paths (including a default Else path) in a journey, based on conditions that you specify.

                  • Branches — (Array<map>)

                    The paths for the activity, including the conditions for entering each path and the activity to perform for each path.

                    • Condition — (map)

                      The condition to evaluate for the activity path.

                      • EventCondition — (map)

                        The dimension settings for the event that's associated with the activity.

                        • Dimensions — (map)

                          The dimensions for the event filter to use for the activity.

                          • Attributes — (map<map>)

                            One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                            • AttributeType — (String)

                              The type of segment dimension to use. Valid values are:

                              • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                              • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                              • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                              • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                              • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                              • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                              • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                              • Possible values include:
                                • "INCLUSIVE"
                                • "EXCLUSIVE"
                                • "CONTAINS"
                                • "BEFORE"
                                • "AFTER"
                                • "ON"
                                • "BETWEEN"
                              • Valuesrequired — (Array<String>)

                                The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                            • EventType — (map)

                              The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                              • DimensionType — (String)

                                The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                Possible values include:
                                • "INCLUSIVE"
                                • "EXCLUSIVE"
                              • Valuesrequired — (Array<String>)

                                The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                            • Metrics — (map<map>)

                              One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                              • ComparisonOperatorrequired — (String)

                                The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                              • Valuerequired — (Float)

                                The value to compare.

                          • MessageActivity — (String)

                            The message identifier (message_id) for the message to use when determining whether message events meet the condition.

                        • SegmentCondition — (map)

                          The segment that's associated with the activity.

                          • SegmentIdrequired — (String)

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

                        • SegmentDimensions — (map)

                          The dimension settings for the segment that's associated with the activity.

                          • Attributes — (map<map>)

                            One or more custom attributes to use as criteria for the segment.

                            • AttributeType — (String)

                              The type of segment dimension to use. Valid values are:

                              • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                              • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                              • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                              • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                              • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                              • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                              • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                              • Possible values include:
                                • "INCLUSIVE"
                                • "EXCLUSIVE"
                                • "CONTAINS"
                                • "BEFORE"
                                • "AFTER"
                                • "ON"
                                • "BETWEEN"
                              • Valuesrequired — (Array<String>)

                                The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                            • Behavior — (map)

                              The behavior-based criteria, such as how recently users have used your app, for the segment.

                              • Recency — (map)

                                The dimension settings that are based on how recently an endpoint was active.

                                • Durationrequired — (String)

                                  The duration to use when determining whether an endpoint is active or inactive.

                                  Possible values include:
                                  • "HR_24"
                                  • "DAY_7"
                                  • "DAY_14"
                                  • "DAY_30"
                                • RecencyTyperequired — (String)

                                  The type of recency dimension to use for the segment. Valid values are: ACTIVE, endpoints that were active within the specified duration are included in the segment; and, INACTIVE, endpoints that weren't active within the specified duration are included in the segment.

                                  Possible values include:
                                  • "ACTIVE"
                                  • "INACTIVE"
                            • Demographic — (map)

                              The demographic-based criteria, such as device platform, for the segment.

                              • AppVersion — (map)

                                The app version criteria for the segment.

                                • DimensionType — (String)

                                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                  Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                              • Channel — (map)

                                The channel criteria for the segment.

                                • DimensionType — (String)

                                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                  Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                              • DeviceType — (map)

                                The device type criteria for the segment.

                                • DimensionType — (String)

                                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                  Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                              • Make — (map)

                                The device make criteria for the segment.

                                • DimensionType — (String)

                                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                  Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                              • Model — (map)

                                The device model criteria for the segment.

                                • DimensionType — (String)

                                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                  Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                              • Platform — (map)

                                The device platform criteria for the segment.

                                • DimensionType — (String)

                                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                  Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                            • Location — (map)

                              The location-based criteria, such as region or GPS coordinates, for the segment.

                              • Country — (map)

                                The country or region code, in ISO 3166-1 alpha-2 format, for the segment.

                                • DimensionType — (String)

                                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                  Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                              • GPSPoint — (map)

                                The GPS location and range for the segment.

                                • Coordinatesrequired — (map)

                                  The GPS coordinates to measure distance from.

                                  • Latituderequired — (Float)

                                    The latitude coordinate of the location.

                                  • Longituderequired — (Float)

                                    The longitude coordinate of the location.

                                • RangeInKilometers — (Float)

                                  The range, in kilometers, from the GPS coordinates.

                            • Metrics — (map<map>)

                              One or more custom metrics to use as criteria for the segment.

                              • ComparisonOperatorrequired — (String)

                                The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                              • Valuerequired — (Float)

                                The value to compare.

                            • UserAttributes — (map<map>)

                              One or more custom user attributes to use as criteria for the segment.

                              • AttributeType — (String)

                                The type of segment dimension to use. Valid values are:

                                • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                                • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                                • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                                • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                                • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                                • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                                • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                                • Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                  • "CONTAINS"
                                  • "BEFORE"
                                  • "AFTER"
                                  • "ON"
                                  • "BETWEEN"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                          • NextActivity — (String)

                            The unique identifier for the next activity to perform, after completing the activity for the path.

                        • DefaultActivity — (String)

                          The unique identifier for the activity to perform for participants who don't meet any of the conditions specified for other paths in the activity.

                        • EvaluationWaitTime — (map)

                          The amount of time to wait or the date and time when Amazon Pinpoint determines whether the conditions are met.

                          • WaitFor — (String)

                            The amount of time to wait, as a duration in ISO 8601 format, before determining whether the activity's conditions have been met or moving participants to the next activity in the journey.

                          • WaitUntil — (String)

                            The date and time, in ISO 8601 format, when Amazon Pinpoint determines whether the activity's conditions have been met or the activity moves participants to the next activity in the journey.

                      • PUSH — (map)

                        The settings for a push notification activity. This type of activity sends a push notification to participants.

                        • MessageConfig — (map)

                          Specifies the time to live (TTL) value for push notifications that are sent to participants in a journey.

                          • TimeToLive — (String)

                            The number of seconds that the push notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                            This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

                        • NextActivity — (String)

                          The unique identifier for the next activity to perform, after the message is sent.

                        • TemplateName — (String)

                          The name of the push notification template to use for the message. If specified, this value must match the name of an existing message template.

                        • TemplateVersion — (String)

                          The unique identifier for the version of the push notification template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                          If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

                      • RandomSplit — (map)

                        The settings for a random split activity. This type of activity randomly sends specified percentages of participants down one of as many as five paths in a journey, based on conditions that you specify.

                        • Branches — (Array<map>)

                          The paths for the activity, including the percentage of participants to enter each path and the activity to perform for each path.

                          • NextActivity — (String)

                            The unique identifier for the next activity to perform, after completing the activity for the path.

                          • Percentage — (Integer)

                            The percentage of participants to send down the activity path.

                            To determine which participants are sent down each path, Amazon Pinpoint applies a probability-based algorithm to the percentages that you specify for the paths. Therefore, the actual percentage of participants who are sent down a path may not be equal to the percentage that you specify.

                      • SMS — (map)

                        The settings for an SMS activity. This type of activity sends a text message to participants.

                        • MessageConfig — (map)

                          Specifies the sender ID and message type for an SMS message that's sent to participants in a journey.

                          • MessageType — (String)

                            The SMS message type. Valid values are TRANSACTIONAL (for messages that are critical or time-sensitive, such as a one-time passwords) and PROMOTIONAL (for messsages that aren't critical or time-sensitive, such as marketing messages).

                            Possible values include:
                            • "TRANSACTIONAL"
                            • "PROMOTIONAL"
                          • OriginationNumber — (String)

                            The long code to send the SMS message from. This value should be one of the dedicated long codes that's assigned to your AWS account. Although it isn't required, we recommend that you specify the long code using an E.164 format to ensure prompt and accurate delivery of the message. For example, +12065550100.

                          • SenderId — (String)

                            The sender ID to display as the sender of the message on a recipient's device. Support for sender IDs varies by country or region. For more information, see Supported Countries and Regions in the Amazon Pinpoint User Guide.

                          • EntityId — (String)

                            The entity ID or Principal Entity (PE) id received from the regulatory body for sending SMS in your country.

                          • TemplateId — (String)

                            The template ID received from the regulatory body for sending SMS in your country.

                        • NextActivity — (String)

                          The unique identifier for the next activity to perform, after the message is sent.

                        • TemplateName — (String)

                          The name of the SMS message template to use for the message. If specified, this value must match the name of an existing message template.

                        • TemplateVersion — (String)

                          The unique identifier for the version of the SMS template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                          If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

                      • Wait — (map)

                        The settings for a wait activity. This type of activity waits for a certain amount of time or until a specific date and time before moving participants to the next activity in a journey.

                        • NextActivity — (String)

                          The unique identifier for the next activity to perform, after performing the wait activity.

                        • WaitTime — (map)

                          The amount of time to wait or the date and time when the activity moves participants to the next activity in the journey.

                          • WaitFor — (String)

                            The amount of time to wait, as a duration in ISO 8601 format, before determining whether the activity's conditions have been met or moving participants to the next activity in the journey.

                          • WaitUntil — (String)

                            The date and time, in ISO 8601 format, when Amazon Pinpoint determines whether the activity's conditions have been met or the activity moves participants to the next activity in the journey.

                      • ContactCenter — (map)

                        The settings for a connect activity. This type of activity initiates a contact center call to participants.

                        • NextActivity — (String)

                          The unique identifier for the next activity to perform after the this activity.

                    • ApplicationIdrequired — (String)

                      The unique identifier for the application that the journey applies to.

                    • CreationDate — (String)

                      The date, in ISO 8601 format, when the journey was created.

                    • Idrequired — (String)

                      The unique identifier for the journey.

                    • LastModifiedDate — (String)

                      The date, in ISO 8601 format, when the journey was last modified.

                    • Limits — (map)

                      The messaging and entry limits for the journey.

                      • DailyCap — (Integer)

                        The maximum number of messages that the journey can send to a single participant during a 24-hour period. The maximum value is 100.

                      • EndpointReentryCap — (Integer)

                        The maximum number of times that a participant can enter the journey. The maximum value is 100. To allow participants to enter the journey an unlimited number of times, set this value to 0.

                      • MessagesPerSecond — (Integer)

                        The maximum number of messages that the journey can send each second.

                      • EndpointReentryInterval — (String)

                        Minimum time that must pass before an endpoint can re-enter a given journey. The duration should use an ISO 8601 format, such as PT1H.

                      • TimeframeCap — (map)

                        The number of messages that an endpoint can receive during the specified timeframe.

                        • Cap — (Integer)

                          The maximum number of messages that all journeys can send to an endpoint during the specified timeframe. The maximum value is 100. If set to 0, this limit will not apply.

                        • Days — (Integer)

                          The length of the timeframe in days. The maximum value is 30. If set to 0, this limit will not apply.

                      • TotalCap — (Integer)

                        The maximum number of messages a journey can sent to a single endpoint. The maximum value is 100. If set to 0, this limit will not apply.

                    • LocalTime — (Boolean)

                      Specifies whether the journey's scheduled start and end times use each participant's local time. If this value is true, the schedule uses each participant's local time.

                    • Namerequired — (String)

                      The name of the journey.

                    • QuietTime — (map)

                      The quiet time settings for the journey. Quiet time is a specific time range when a journey doesn't send messages to participants, if all the following conditions are met:

                      • The EndpointDemographic.Timezone property of the endpoint for the participant is set to a valid value.

                      • The current time in the participant's time zone is later than or equal to the time specified by the QuietTime.Start property for the journey.

                      • The current time in the participant's time zone is earlier than or equal to the time specified by the QuietTime.End property for the journey.

                      If any of the preceding conditions isn't met, the participant will receive messages from the journey, even if quiet time is enabled.

                      • End — (String)

                        The specific time when quiet time ends. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

                      • Start — (String)

                        The specific time when quiet time begins. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

                    • RefreshFrequency — (String)

                      The frequency with which Amazon Pinpoint evaluates segment and event data for the journey, as a duration in ISO 8601 format.

                    • Schedule — (map)

                      The schedule settings for the journey.

                      • EndTime — (Date)

                        The scheduled time, in ISO 8601 format, when the journey ended or will end.

                      • StartTime — (Date)

                        The scheduled time, in ISO 8601 format, when the journey began or will begin.

                      • Timezone — (String)

                        The starting UTC offset for the journey schedule, if the value of the journey's LocalTime property is true. Valid values are: UTC, UTC+01, UTC+02, UTC+03, UTC+03:30, UTC+04, UTC+04:30, UTC+05, UTC+05:30, UTC+05:45, UTC+06, UTC+06:30, UTC+07, UTC+08, UTC+08:45, UTC+09, UTC+09:30, UTC+10, UTC+10:30, UTC+11, UTC+12, UTC+12:45, UTC+13, UTC+13:45, UTC-02, UTC-02:30, UTC-03, UTC-03:30, UTC-04, UTC-05, UTC-06, UTC-07, UTC-08, UTC-09, UTC-09:30, UTC-10, and UTC-11.

                    • StartActivity — (String)

                      The unique identifier for the first activity in the journey.

                    • StartCondition — (map)

                      The segment that defines which users are participants in the journey.

                      • Description — (String)

                        The custom description of the condition.

                      • EventStartCondition — (map)

                        Specifies the settings for an event that causes a journey activity to start.

                        • EventFilter — (map)

                          Specifies the settings for an event that causes a campaign to be sent or a journey activity to be performed.

                          • Dimensionsrequired — (map)

                            The dimensions for the event filter to use for the campaign or the journey activity.

                            • Attributes — (map<map>)

                              One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                              • AttributeType — (String)

                                The type of segment dimension to use. Valid values are:

                                • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                                • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                                • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                                • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                                • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                                • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                                • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                                • Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                  • "CONTAINS"
                                  • "BEFORE"
                                  • "AFTER"
                                  • "ON"
                                  • "BETWEEN"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                              • EventType — (map)

                                The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                                • DimensionType — (String)

                                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                  Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                              • Metrics — (map<map>)

                                One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                                • ComparisonOperatorrequired — (String)

                                  The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                                • Valuerequired — (Float)

                                  The value to compare.

                            • FilterTyperequired — (String)

                              The type of event that causes the campaign to be sent or the journey activity to be performed. Valid values are: SYSTEM, sends the campaign or performs the activity when a system event occurs; and, ENDPOINT, sends the campaign or performs the activity when an endpoint event (Events resource) occurs.

                              Possible values include:
                              • "SYSTEM"
                              • "ENDPOINT"
                          • SegmentId — (String)
                        • SegmentStartCondition — (map)

                          The segment that's associated with the first activity in the journey. This segment determines which users are participants in the journey.

                          • SegmentIdrequired — (String)

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

                      • State — (String)

                        The current status of the journey. Possible values are:

                        • DRAFT - The journey is being developed and hasn't been published yet.

                        • ACTIVE - The journey has been developed and published. Depending on the journey's schedule, the journey may currently be running or scheduled to start running at a later time. If a journey's status is ACTIVE, you can't add, change, or remove activities from it.

                        • COMPLETED - The journey has been published and has finished running. All participants have entered the journey and no participants are waiting to complete the journey or any activities in the journey.

                        • CANCELLED - The journey has been stopped. If a journey's status is CANCELLED, you can't add, change, or remove activities or segment settings from the journey.

                        • CLOSED - The journey has been published and has started running. It may have also passed its scheduled end time, or passed its scheduled start time and a refresh frequency hasn't been specified for it. If a journey's status is CLOSED, you can't add participants to it, and no existing participants can enter the journey for the first time. However, any existing participants who are currently waiting to start an activity may continue the journey.

                        Possible values include:
                        • "DRAFT"
                        • "ACTIVE"
                        • "COMPLETED"
                        • "CANCELLED"
                        • "CLOSED"
                        • "PAUSED"
                      • tags — (map<String>)

                        This object is not used or supported.

                      • WaitForQuietTime — (Boolean)

                        Indicates whether endpoints in quiet hours should enter a wait activity until quiet hours have elapsed.

                      • RefreshOnSegmentUpdate — (Boolean)

                        Indicates whether the journey participants should be refreshed when a segment is updated.

                      • JourneyChannelSettings — (map)

                        The channel-specific configurations for the journey.

                        • ConnectCampaignArn — (String)

                          Amazon Resource Name (ARN) of the Connect Campaign.

                        • ConnectCampaignExecutionRoleArn — (String)

                          IAM role ARN to be assumed when invoking Connect campaign execution APIs for dialing.

                      • SendingSchedule — (Boolean)

                        Indicates if journey has Advance Quiet Time enabled. This flag should be set to true in order to allow using OpenHours and ClosedDays.

                      • OpenHours — (map)

                        The time when a journey can send messages. QuietTime should be configured first and SendingSchedule should be set to true.

                        • EMAIL — (map<Array<map>>)

                          Specifies the schedule settings for the email channel.

                          • StartTime — (String)

                            The start of the scheduled time, in ISO 8601 format, when the channel can send messages.

                          • EndTime — (String)

                            The end of the scheduled time, in ISO 8601 format, when the channel can't send messages.

                        • SMS — (map<Array<map>>)

                          Specifies the schedule settings for the SMS channel.

                          • StartTime — (String)

                            The start of the scheduled time, in ISO 8601 format, when the channel can send messages.

                          • EndTime — (String)

                            The end of the scheduled time, in ISO 8601 format, when the channel can't send messages.

                        • PUSH — (map<Array<map>>)

                          Specifies the schedule settings for the push channel.

                          • StartTime — (String)

                            The start of the scheduled time, in ISO 8601 format, when the channel can send messages.

                          • EndTime — (String)

                            The end of the scheduled time, in ISO 8601 format, when the channel can't send messages.

                        • VOICE — (map<Array<map>>)

                          Specifies the schedule settings for the voice channel.

                          • StartTime — (String)

                            The start of the scheduled time, in ISO 8601 format, when the channel can send messages.

                          • EndTime — (String)

                            The end of the scheduled time, in ISO 8601 format, when the channel can't send messages.

                        • CUSTOM — (map<Array<map>>)

                          Specifies the schedule settings for the custom channel.

                          • StartTime — (String)

                            The start of the scheduled time, in ISO 8601 format, when the channel can send messages.

                          • EndTime — (String)

                            The end of the scheduled time, in ISO 8601 format, when the channel can't send messages.

                      • ClosedDays — (map)

                        The time when a journey will not send messages. QuietTime should be configured first and SendingSchedule should be set to true.

                        • EMAIL — (Array<map>)

                          Rules for the Email channel.

                          • Name — (String)

                            The name of the closed day rule.

                          • StartDateTime — (String)

                            Start DateTime ISO 8601 format

                          • EndDateTime — (String)

                            End DateTime ISO 8601 format

                        • SMS — (Array<map>)

                          Rules for the SMS channel.

                          • Name — (String)

                            The name of the closed day rule.

                          • StartDateTime — (String)

                            Start DateTime ISO 8601 format

                          • EndDateTime — (String)

                            End DateTime ISO 8601 format

                        • PUSH — (Array<map>)

                          Rules for the Push channel.

                          • Name — (String)

                            The name of the closed day rule.

                          • StartDateTime — (String)

                            Start DateTime ISO 8601 format

                          • EndDateTime — (String)

                            End DateTime ISO 8601 format

                        • VOICE — (Array<map>)

                          Rules for the Voice channel.

                          • Name — (String)

                            The name of the closed day rule.

                          • StartDateTime — (String)

                            Start DateTime ISO 8601 format

                          • EndDateTime — (String)

                            End DateTime ISO 8601 format

                        • CUSTOM — (Array<map>)

                          Rules for the Custom channel.

                          • Name — (String)

                            The name of the closed day rule.

                          • StartDateTime — (String)

                            Start DateTime ISO 8601 format

                          • EndDateTime — (String)

                            End DateTime ISO 8601 format

                      • TimezoneEstimationMethods — (Array<String>)

                        An array of time zone estimation methods, if any, to use for determining an Endpoints time zone if the Endpoint does not have a value for the Demographic.Timezone attribute.

                        • PHONE_NUMBER - A time zone is determined based on the Endpoint.Address and Endpoint.Location.Country.

                        • POSTAL_CODE - A time zone is determined based on the Endpoint.Location.PostalCode and Endpoint.Location.Country.

                          Note: POSTAL_CODE detection is only supported in the United States, United Kingdom, Australia, New Zealand, Canada, France, Italy, Spain, Germany and in regions where Amazon Pinpoint is available.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

updateJourneyState(params = {}, callback) ⇒ AWS.Request

Cancels (stops) an active journey.

Service Reference:

Examples:

Calling the updateJourneyState operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  JourneyId: 'STRING_VALUE', /* required */
  JourneyStateRequest: { /* required */
    State: DRAFT | ACTIVE | COMPLETED | CANCELLED | CLOSED | PAUSED
  }
};
pinpoint.updateJourneyState(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • JourneyId — (String)

      The unique identifier for the journey.

    • JourneyStateRequest — (map)

      Changes the status of a journey.

      • State — (String)

        The status of the journey. Currently, Supported values are ACTIVE, PAUSED, and CANCELLED

        If you cancel a journey, Amazon Pinpoint continues to perform activities that are currently in progress, until those activities are complete. Amazon Pinpoint also continues to collect and aggregate analytics data for those activities, until they are complete, and any activities that were complete when you cancelled the journey.

        After you cancel a journey, you can't add, change, or remove any activities from the journey. In addition, Amazon Pinpoint stops evaluating the journey and doesn't perform any activities that haven't started.

        When the journey is paused, Amazon Pinpoint continues to perform activities that are currently in progress, until those activities are complete. Endpoints will stop entering journeys when the journey is paused and will resume entering the journey after the journey is resumed. For wait activities, wait time is paused when the journey is paused. Currently, PAUSED only supports journeys with a segment refresh interval.

        Possible values include:
        • "DRAFT"
        • "ACTIVE"
        • "COMPLETED"
        • "CANCELLED"
        • "CLOSED"
        • "PAUSED"

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • JourneyResponse — (map)

        Provides information about the status, configuration, and other settings for a journey.

        • Activities — (map<map>)

          A map that contains a set of Activity objects, one object for each activity in the journey. For each Activity object, the key is the unique identifier (string) for an activity and the value is the settings for the activity.

          • CUSTOM — (map)

            The settings for a custom message activity. This type of activity calls an AWS Lambda function or web hook that sends messages to participants.

            • DeliveryUri — (String)

              The destination to send the campaign or treatment to. This value can be one of the following:

              • The name or Amazon Resource Name (ARN) of an AWS Lambda function to invoke to handle delivery of the campaign or treatment.

              • The URL for a web application or service that supports HTTPS and can receive the message. The URL has to be a full URL, including the HTTPS protocol.

            • EndpointTypes — (Array<String>)

              The types of endpoints to send the custom message to. Each valid value maps to a type of channel that you can associate with an endpoint by using the ChannelType property of an endpoint.

            • MessageConfig — (map)

              Specifies the message data included in a custom channel message that's sent to participants in a journey.

              • Data — (String)

                The message content that's passed to an AWS Lambda function or to a web hook.

            • NextActivity — (String)

              The unique identifier for the next activity to perform, after Amazon Pinpoint calls the AWS Lambda function or web hook.

            • TemplateName — (String)

              The name of the custom message template to use for the message. If specified, this value must match the name of an existing message template.

            • TemplateVersion — (String)

              The unique identifier for the version of the message template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

              If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

          • ConditionalSplit — (map)

            The settings for a yes/no split activity. This type of activity sends participants down one of two paths in a journey, based on conditions that you specify.

            • Condition — (map)

              The conditions that define the paths for the activity, and the relationship between the conditions.

              • Conditions — (Array<map>)

                The conditions to evaluate for the activity.

                • EventCondition — (map)

                  The dimension settings for the event that's associated with the activity.

                  • Dimensions — (map)

                    The dimensions for the event filter to use for the activity.

                    • Attributes — (map<map>)

                      One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                      • AttributeType — (String)

                        The type of segment dimension to use. Valid values are:

                        • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                        • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                        • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                        • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                        • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                        • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                        • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                        • Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                          • "CONTAINS"
                          • "BEFORE"
                          • "AFTER"
                          • "ON"
                          • "BETWEEN"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                      • EventType — (map)

                        The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • Metrics — (map<map>)

                        One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                        • ComparisonOperatorrequired — (String)

                          The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                        • Valuerequired — (Float)

                          The value to compare.

                    • MessageActivity — (String)

                      The message identifier (message_id) for the message to use when determining whether message events meet the condition.

                  • SegmentCondition — (map)

                    The segment that's associated with the activity.

                    • SegmentIdrequired — (String)

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

                  • SegmentDimensions — (map)

                    The dimension settings for the segment that's associated with the activity.

                    • Attributes — (map<map>)

                      One or more custom attributes to use as criteria for the segment.

                      • AttributeType — (String)

                        The type of segment dimension to use. Valid values are:

                        • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                        • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                        • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                        • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                        • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                        • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                        • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                        • Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                          • "CONTAINS"
                          • "BEFORE"
                          • "AFTER"
                          • "ON"
                          • "BETWEEN"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                      • Behavior — (map)

                        The behavior-based criteria, such as how recently users have used your app, for the segment.

                        • Recency — (map)

                          The dimension settings that are based on how recently an endpoint was active.

                          • Durationrequired — (String)

                            The duration to use when determining whether an endpoint is active or inactive.

                            Possible values include:
                            • "HR_24"
                            • "DAY_7"
                            • "DAY_14"
                            • "DAY_30"
                          • RecencyTyperequired — (String)

                            The type of recency dimension to use for the segment. Valid values are: ACTIVE, endpoints that were active within the specified duration are included in the segment; and, INACTIVE, endpoints that weren't active within the specified duration are included in the segment.

                            Possible values include:
                            • "ACTIVE"
                            • "INACTIVE"
                      • Demographic — (map)

                        The demographic-based criteria, such as device platform, for the segment.

                        • AppVersion — (map)

                          The app version criteria for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • Channel — (map)

                          The channel criteria for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • DeviceType — (map)

                          The device type criteria for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • Make — (map)

                          The device make criteria for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • Model — (map)

                          The device model criteria for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • Platform — (map)

                          The device platform criteria for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • Location — (map)

                        The location-based criteria, such as region or GPS coordinates, for the segment.

                        • Country — (map)

                          The country or region code, in ISO 3166-1 alpha-2 format, for the segment.

                          • DimensionType — (String)

                            The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                            Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                        • GPSPoint — (map)

                          The GPS location and range for the segment.

                          • Coordinatesrequired — (map)

                            The GPS coordinates to measure distance from.

                            • Latituderequired — (Float)

                              The latitude coordinate of the location.

                            • Longituderequired — (Float)

                              The longitude coordinate of the location.

                          • RangeInKilometers — (Float)

                            The range, in kilometers, from the GPS coordinates.

                      • Metrics — (map<map>)

                        One or more custom metrics to use as criteria for the segment.

                        • ComparisonOperatorrequired — (String)

                          The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                        • Valuerequired — (Float)

                          The value to compare.

                      • UserAttributes — (map<map>)

                        One or more custom user attributes to use as criteria for the segment.

                        • AttributeType — (String)

                          The type of segment dimension to use. Valid values are:

                          • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                          • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                          • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                          • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                          • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                          • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                          • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                          • Possible values include:
                            • "INCLUSIVE"
                            • "EXCLUSIVE"
                            • "CONTAINS"
                            • "BEFORE"
                            • "AFTER"
                            • "ON"
                            • "BETWEEN"
                          • Valuesrequired — (Array<String>)

                            The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                    • Operator — (String)

                      Specifies how to handle multiple conditions for the activity. For example, if you specify two conditions for an activity, whether both or only one of the conditions must be met for the activity to be performed.

                      Possible values include:
                      • "ALL"
                      • "ANY"
                  • EvaluationWaitTime — (map)

                    The amount of time to wait before determining whether the conditions are met, or the date and time when Amazon Pinpoint determines whether the conditions are met.

                    • WaitFor — (String)

                      The amount of time to wait, as a duration in ISO 8601 format, before determining whether the activity's conditions have been met or moving participants to the next activity in the journey.

                    • WaitUntil — (String)

                      The date and time, in ISO 8601 format, when Amazon Pinpoint determines whether the activity's conditions have been met or the activity moves participants to the next activity in the journey.

                  • FalseActivity — (String)

                    The unique identifier for the activity to perform if the conditions aren't met.

                  • TrueActivity — (String)

                    The unique identifier for the activity to perform if the conditions are met.

                • Description — (String)

                  The custom description of the activity.

                • EMAIL — (map)

                  The settings for an email activity. This type of activity sends an email message to participants.

                  • MessageConfig — (map)

                    Specifies the sender address for an email message that's sent to participants in the journey.

                    • FromAddress — (String)

                      The verified email address to send the email message from. The default address is the FromAddress specified for the email channel for the application.

                  • NextActivity — (String)

                    The unique identifier for the next activity to perform, after the message is sent.

                  • TemplateName — (String)

                    The name of the email message template to use for the message. If specified, this value must match the name of an existing message template.

                  • TemplateVersion — (String)

                    The unique identifier for the version of the email template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                    If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

                • Holdout — (map)

                  The settings for a holdout activity. This type of activity stops a journey for a specified percentage of participants.

                  • NextActivity — (String)

                    The unique identifier for the next activity to perform, after performing the holdout activity.

                  • Percentagerequired — (Integer)

                    The percentage of participants who shouldn't continue the journey.

                    To determine which participants are held out, Amazon Pinpoint applies a probability-based algorithm to the percentage that you specify. Therefore, the actual percentage of participants who are held out may not be equal to the percentage that you specify.

                • MultiCondition — (map)

                  The settings for a multivariate split activity. This type of activity sends participants down one of as many as five paths (including a default Else path) in a journey, based on conditions that you specify.

                  • Branches — (Array<map>)

                    The paths for the activity, including the conditions for entering each path and the activity to perform for each path.

                    • Condition — (map)

                      The condition to evaluate for the activity path.

                      • EventCondition — (map)

                        The dimension settings for the event that's associated with the activity.

                        • Dimensions — (map)

                          The dimensions for the event filter to use for the activity.

                          • Attributes — (map<map>)

                            One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                            • AttributeType — (String)

                              The type of segment dimension to use. Valid values are:

                              • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                              • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                              • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                              • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                              • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                              • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                              • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                              • Possible values include:
                                • "INCLUSIVE"
                                • "EXCLUSIVE"
                                • "CONTAINS"
                                • "BEFORE"
                                • "AFTER"
                                • "ON"
                                • "BETWEEN"
                              • Valuesrequired — (Array<String>)

                                The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                            • EventType — (map)

                              The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                              • DimensionType — (String)

                                The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                Possible values include:
                                • "INCLUSIVE"
                                • "EXCLUSIVE"
                              • Valuesrequired — (Array<String>)

                                The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                            • Metrics — (map<map>)

                              One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                              • ComparisonOperatorrequired — (String)

                                The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                              • Valuerequired — (Float)

                                The value to compare.

                          • MessageActivity — (String)

                            The message identifier (message_id) for the message to use when determining whether message events meet the condition.

                        • SegmentCondition — (map)

                          The segment that's associated with the activity.

                          • SegmentIdrequired — (String)

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

                        • SegmentDimensions — (map)

                          The dimension settings for the segment that's associated with the activity.

                          • Attributes — (map<map>)

                            One or more custom attributes to use as criteria for the segment.

                            • AttributeType — (String)

                              The type of segment dimension to use. Valid values are:

                              • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                              • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                              • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                              • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                              • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                              • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                              • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                              • Possible values include:
                                • "INCLUSIVE"
                                • "EXCLUSIVE"
                                • "CONTAINS"
                                • "BEFORE"
                                • "AFTER"
                                • "ON"
                                • "BETWEEN"
                              • Valuesrequired — (Array<String>)

                                The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                            • Behavior — (map)

                              The behavior-based criteria, such as how recently users have used your app, for the segment.

                              • Recency — (map)

                                The dimension settings that are based on how recently an endpoint was active.

                                • Durationrequired — (String)

                                  The duration to use when determining whether an endpoint is active or inactive.

                                  Possible values include:
                                  • "HR_24"
                                  • "DAY_7"
                                  • "DAY_14"
                                  • "DAY_30"
                                • RecencyTyperequired — (String)

                                  The type of recency dimension to use for the segment. Valid values are: ACTIVE, endpoints that were active within the specified duration are included in the segment; and, INACTIVE, endpoints that weren't active within the specified duration are included in the segment.

                                  Possible values include:
                                  • "ACTIVE"
                                  • "INACTIVE"
                            • Demographic — (map)

                              The demographic-based criteria, such as device platform, for the segment.

                              • AppVersion — (map)

                                The app version criteria for the segment.

                                • DimensionType — (String)

                                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                  Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                              • Channel — (map)

                                The channel criteria for the segment.

                                • DimensionType — (String)

                                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                  Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                              • DeviceType — (map)

                                The device type criteria for the segment.

                                • DimensionType — (String)

                                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                  Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                              • Make — (map)

                                The device make criteria for the segment.

                                • DimensionType — (String)

                                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                  Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                              • Model — (map)

                                The device model criteria for the segment.

                                • DimensionType — (String)

                                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                  Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                              • Platform — (map)

                                The device platform criteria for the segment.

                                • DimensionType — (String)

                                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                  Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                            • Location — (map)

                              The location-based criteria, such as region or GPS coordinates, for the segment.

                              • Country — (map)

                                The country or region code, in ISO 3166-1 alpha-2 format, for the segment.

                                • DimensionType — (String)

                                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                  Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                              • GPSPoint — (map)

                                The GPS location and range for the segment.

                                • Coordinatesrequired — (map)

                                  The GPS coordinates to measure distance from.

                                  • Latituderequired — (Float)

                                    The latitude coordinate of the location.

                                  • Longituderequired — (Float)

                                    The longitude coordinate of the location.

                                • RangeInKilometers — (Float)

                                  The range, in kilometers, from the GPS coordinates.

                            • Metrics — (map<map>)

                              One or more custom metrics to use as criteria for the segment.

                              • ComparisonOperatorrequired — (String)

                                The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                              • Valuerequired — (Float)

                                The value to compare.

                            • UserAttributes — (map<map>)

                              One or more custom user attributes to use as criteria for the segment.

                              • AttributeType — (String)

                                The type of segment dimension to use. Valid values are:

                                • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                                • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                                • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                                • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                                • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                                • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                                • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                                • Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                  • "CONTAINS"
                                  • "BEFORE"
                                  • "AFTER"
                                  • "ON"
                                  • "BETWEEN"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                          • NextActivity — (String)

                            The unique identifier for the next activity to perform, after completing the activity for the path.

                        • DefaultActivity — (String)

                          The unique identifier for the activity to perform for participants who don't meet any of the conditions specified for other paths in the activity.

                        • EvaluationWaitTime — (map)

                          The amount of time to wait or the date and time when Amazon Pinpoint determines whether the conditions are met.

                          • WaitFor — (String)

                            The amount of time to wait, as a duration in ISO 8601 format, before determining whether the activity's conditions have been met or moving participants to the next activity in the journey.

                          • WaitUntil — (String)

                            The date and time, in ISO 8601 format, when Amazon Pinpoint determines whether the activity's conditions have been met or the activity moves participants to the next activity in the journey.

                      • PUSH — (map)

                        The settings for a push notification activity. This type of activity sends a push notification to participants.

                        • MessageConfig — (map)

                          Specifies the time to live (TTL) value for push notifications that are sent to participants in a journey.

                          • TimeToLive — (String)

                            The number of seconds that the push notification service should keep the message, if the service is unable to deliver the notification the first time. This value is converted to an expiration value when it's sent to a push-notification service. If this value is 0, the service treats the notification as if it expires immediately and the service doesn't store or try to deliver the notification again.

                            This value doesn't apply to messages that are sent through the Amazon Device Messaging (ADM) service.

                        • NextActivity — (String)

                          The unique identifier for the next activity to perform, after the message is sent.

                        • TemplateName — (String)

                          The name of the push notification template to use for the message. If specified, this value must match the name of an existing message template.

                        • TemplateVersion — (String)

                          The unique identifier for the version of the push notification template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                          If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

                      • RandomSplit — (map)

                        The settings for a random split activity. This type of activity randomly sends specified percentages of participants down one of as many as five paths in a journey, based on conditions that you specify.

                        • Branches — (Array<map>)

                          The paths for the activity, including the percentage of participants to enter each path and the activity to perform for each path.

                          • NextActivity — (String)

                            The unique identifier for the next activity to perform, after completing the activity for the path.

                          • Percentage — (Integer)

                            The percentage of participants to send down the activity path.

                            To determine which participants are sent down each path, Amazon Pinpoint applies a probability-based algorithm to the percentages that you specify for the paths. Therefore, the actual percentage of participants who are sent down a path may not be equal to the percentage that you specify.

                      • SMS — (map)

                        The settings for an SMS activity. This type of activity sends a text message to participants.

                        • MessageConfig — (map)

                          Specifies the sender ID and message type for an SMS message that's sent to participants in a journey.

                          • MessageType — (String)

                            The SMS message type. Valid values are TRANSACTIONAL (for messages that are critical or time-sensitive, such as a one-time passwords) and PROMOTIONAL (for messsages that aren't critical or time-sensitive, such as marketing messages).

                            Possible values include:
                            • "TRANSACTIONAL"
                            • "PROMOTIONAL"
                          • OriginationNumber — (String)

                            The long code to send the SMS message from. This value should be one of the dedicated long codes that's assigned to your AWS account. Although it isn't required, we recommend that you specify the long code using an E.164 format to ensure prompt and accurate delivery of the message. For example, +12065550100.

                          • SenderId — (String)

                            The sender ID to display as the sender of the message on a recipient's device. Support for sender IDs varies by country or region. For more information, see Supported Countries and Regions in the Amazon Pinpoint User Guide.

                          • EntityId — (String)

                            The entity ID or Principal Entity (PE) id received from the regulatory body for sending SMS in your country.

                          • TemplateId — (String)

                            The template ID received from the regulatory body for sending SMS in your country.

                        • NextActivity — (String)

                          The unique identifier for the next activity to perform, after the message is sent.

                        • TemplateName — (String)

                          The name of the SMS message template to use for the message. If specified, this value must match the name of an existing message template.

                        • TemplateVersion — (String)

                          The unique identifier for the version of the SMS template to use for the message. If specified, this value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

                          If you don't specify a value for this property, Amazon Pinpoint uses the active version of the template. The active version is typically the version of a template that's been most recently reviewed and approved for use, depending on your workflow. It isn't necessarily the latest version of a template.

                      • Wait — (map)

                        The settings for a wait activity. This type of activity waits for a certain amount of time or until a specific date and time before moving participants to the next activity in a journey.

                        • NextActivity — (String)

                          The unique identifier for the next activity to perform, after performing the wait activity.

                        • WaitTime — (map)

                          The amount of time to wait or the date and time when the activity moves participants to the next activity in the journey.

                          • WaitFor — (String)

                            The amount of time to wait, as a duration in ISO 8601 format, before determining whether the activity's conditions have been met or moving participants to the next activity in the journey.

                          • WaitUntil — (String)

                            The date and time, in ISO 8601 format, when Amazon Pinpoint determines whether the activity's conditions have been met or the activity moves participants to the next activity in the journey.

                      • ContactCenter — (map)

                        The settings for a connect activity. This type of activity initiates a contact center call to participants.

                        • NextActivity — (String)

                          The unique identifier for the next activity to perform after the this activity.

                    • ApplicationIdrequired — (String)

                      The unique identifier for the application that the journey applies to.

                    • CreationDate — (String)

                      The date, in ISO 8601 format, when the journey was created.

                    • Idrequired — (String)

                      The unique identifier for the journey.

                    • LastModifiedDate — (String)

                      The date, in ISO 8601 format, when the journey was last modified.

                    • Limits — (map)

                      The messaging and entry limits for the journey.

                      • DailyCap — (Integer)

                        The maximum number of messages that the journey can send to a single participant during a 24-hour period. The maximum value is 100.

                      • EndpointReentryCap — (Integer)

                        The maximum number of times that a participant can enter the journey. The maximum value is 100. To allow participants to enter the journey an unlimited number of times, set this value to 0.

                      • MessagesPerSecond — (Integer)

                        The maximum number of messages that the journey can send each second.

                      • EndpointReentryInterval — (String)

                        Minimum time that must pass before an endpoint can re-enter a given journey. The duration should use an ISO 8601 format, such as PT1H.

                      • TimeframeCap — (map)

                        The number of messages that an endpoint can receive during the specified timeframe.

                        • Cap — (Integer)

                          The maximum number of messages that all journeys can send to an endpoint during the specified timeframe. The maximum value is 100. If set to 0, this limit will not apply.

                        • Days — (Integer)

                          The length of the timeframe in days. The maximum value is 30. If set to 0, this limit will not apply.

                      • TotalCap — (Integer)

                        The maximum number of messages a journey can sent to a single endpoint. The maximum value is 100. If set to 0, this limit will not apply.

                    • LocalTime — (Boolean)

                      Specifies whether the journey's scheduled start and end times use each participant's local time. If this value is true, the schedule uses each participant's local time.

                    • Namerequired — (String)

                      The name of the journey.

                    • QuietTime — (map)

                      The quiet time settings for the journey. Quiet time is a specific time range when a journey doesn't send messages to participants, if all the following conditions are met:

                      • The EndpointDemographic.Timezone property of the endpoint for the participant is set to a valid value.

                      • The current time in the participant's time zone is later than or equal to the time specified by the QuietTime.Start property for the journey.

                      • The current time in the participant's time zone is earlier than or equal to the time specified by the QuietTime.End property for the journey.

                      If any of the preceding conditions isn't met, the participant will receive messages from the journey, even if quiet time is enabled.

                      • End — (String)

                        The specific time when quiet time ends. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

                      • Start — (String)

                        The specific time when quiet time begins. This value has to use 24-hour notation and be in HH:MM format, where HH is the hour (with a leading zero, if applicable) and MM is the minutes. For example, use 02:30 to represent 2:30 AM, or 14:30 to represent 2:30 PM.

                    • RefreshFrequency — (String)

                      The frequency with which Amazon Pinpoint evaluates segment and event data for the journey, as a duration in ISO 8601 format.

                    • Schedule — (map)

                      The schedule settings for the journey.

                      • EndTime — (Date)

                        The scheduled time, in ISO 8601 format, when the journey ended or will end.

                      • StartTime — (Date)

                        The scheduled time, in ISO 8601 format, when the journey began or will begin.

                      • Timezone — (String)

                        The starting UTC offset for the journey schedule, if the value of the journey's LocalTime property is true. Valid values are: UTC, UTC+01, UTC+02, UTC+03, UTC+03:30, UTC+04, UTC+04:30, UTC+05, UTC+05:30, UTC+05:45, UTC+06, UTC+06:30, UTC+07, UTC+08, UTC+08:45, UTC+09, UTC+09:30, UTC+10, UTC+10:30, UTC+11, UTC+12, UTC+12:45, UTC+13, UTC+13:45, UTC-02, UTC-02:30, UTC-03, UTC-03:30, UTC-04, UTC-05, UTC-06, UTC-07, UTC-08, UTC-09, UTC-09:30, UTC-10, and UTC-11.

                    • StartActivity — (String)

                      The unique identifier for the first activity in the journey.

                    • StartCondition — (map)

                      The segment that defines which users are participants in the journey.

                      • Description — (String)

                        The custom description of the condition.

                      • EventStartCondition — (map)

                        Specifies the settings for an event that causes a journey activity to start.

                        • EventFilter — (map)

                          Specifies the settings for an event that causes a campaign to be sent or a journey activity to be performed.

                          • Dimensionsrequired — (map)

                            The dimensions for the event filter to use for the campaign or the journey activity.

                            • Attributes — (map<map>)

                              One or more custom attributes that your application reports to Amazon Pinpoint. You can use these attributes as selection criteria when you create an event filter.

                              • AttributeType — (String)

                                The type of segment dimension to use. Valid values are:

                                • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                                • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                                • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                                • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                                • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                                • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                                • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                                • Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                  • "CONTAINS"
                                  • "BEFORE"
                                  • "AFTER"
                                  • "ON"
                                  • "BETWEEN"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                              • EventType — (map)

                                The name of the event that causes the campaign to be sent or the journey activity to be performed. This can be a standard event that Amazon Pinpoint generates, such as _email.delivered. For campaigns, this can also be a custom event that's specific to your application. For information about standard events, see Streaming Amazon Pinpoint Events in the Amazon Pinpoint Developer Guide.

                                • DimensionType — (String)

                                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                                  Possible values include:
                                  • "INCLUSIVE"
                                  • "EXCLUSIVE"
                                • Valuesrequired — (Array<String>)

                                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                              • Metrics — (map<map>)

                                One or more custom metrics that your application reports to Amazon Pinpoint. You can use these metrics as selection criteria when you create an event filter.

                                • ComparisonOperatorrequired — (String)

                                  The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                                • Valuerequired — (Float)

                                  The value to compare.

                            • FilterTyperequired — (String)

                              The type of event that causes the campaign to be sent or the journey activity to be performed. Valid values are: SYSTEM, sends the campaign or performs the activity when a system event occurs; and, ENDPOINT, sends the campaign or performs the activity when an endpoint event (Events resource) occurs.

                              Possible values include:
                              • "SYSTEM"
                              • "ENDPOINT"
                          • SegmentId — (String)
                        • SegmentStartCondition — (map)

                          The segment that's associated with the first activity in the journey. This segment determines which users are participants in the journey.

                          • SegmentIdrequired — (String)

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

                      • State — (String)

                        The current status of the journey. Possible values are:

                        • DRAFT - The journey is being developed and hasn't been published yet.

                        • ACTIVE - The journey has been developed and published. Depending on the journey's schedule, the journey may currently be running or scheduled to start running at a later time. If a journey's status is ACTIVE, you can't add, change, or remove activities from it.

                        • COMPLETED - The journey has been published and has finished running. All participants have entered the journey and no participants are waiting to complete the journey or any activities in the journey.

                        • CANCELLED - The journey has been stopped. If a journey's status is CANCELLED, you can't add, change, or remove activities or segment settings from the journey.

                        • CLOSED - The journey has been published and has started running. It may have also passed its scheduled end time, or passed its scheduled start time and a refresh frequency hasn't been specified for it. If a journey's status is CLOSED, you can't add participants to it, and no existing participants can enter the journey for the first time. However, any existing participants who are currently waiting to start an activity may continue the journey.

                        Possible values include:
                        • "DRAFT"
                        • "ACTIVE"
                        • "COMPLETED"
                        • "CANCELLED"
                        • "CLOSED"
                        • "PAUSED"
                      • tags — (map<String>)

                        This object is not used or supported.

                      • WaitForQuietTime — (Boolean)

                        Indicates whether endpoints in quiet hours should enter a wait activity until quiet hours have elapsed.

                      • RefreshOnSegmentUpdate — (Boolean)

                        Indicates whether the journey participants should be refreshed when a segment is updated.

                      • JourneyChannelSettings — (map)

                        The channel-specific configurations for the journey.

                        • ConnectCampaignArn — (String)

                          Amazon Resource Name (ARN) of the Connect Campaign.

                        • ConnectCampaignExecutionRoleArn — (String)

                          IAM role ARN to be assumed when invoking Connect campaign execution APIs for dialing.

                      • SendingSchedule — (Boolean)

                        Indicates if journey has Advance Quiet Time enabled. This flag should be set to true in order to allow using OpenHours and ClosedDays.

                      • OpenHours — (map)

                        The time when a journey can send messages. QuietTime should be configured first and SendingSchedule should be set to true.

                        • EMAIL — (map<Array<map>>)

                          Specifies the schedule settings for the email channel.

                          • StartTime — (String)

                            The start of the scheduled time, in ISO 8601 format, when the channel can send messages.

                          • EndTime — (String)

                            The end of the scheduled time, in ISO 8601 format, when the channel can't send messages.

                        • SMS — (map<Array<map>>)

                          Specifies the schedule settings for the SMS channel.

                          • StartTime — (String)

                            The start of the scheduled time, in ISO 8601 format, when the channel can send messages.

                          • EndTime — (String)

                            The end of the scheduled time, in ISO 8601 format, when the channel can't send messages.

                        • PUSH — (map<Array<map>>)

                          Specifies the schedule settings for the push channel.

                          • StartTime — (String)

                            The start of the scheduled time, in ISO 8601 format, when the channel can send messages.

                          • EndTime — (String)

                            The end of the scheduled time, in ISO 8601 format, when the channel can't send messages.

                        • VOICE — (map<Array<map>>)

                          Specifies the schedule settings for the voice channel.

                          • StartTime — (String)

                            The start of the scheduled time, in ISO 8601 format, when the channel can send messages.

                          • EndTime — (String)

                            The end of the scheduled time, in ISO 8601 format, when the channel can't send messages.

                        • CUSTOM — (map<Array<map>>)

                          Specifies the schedule settings for the custom channel.

                          • StartTime — (String)

                            The start of the scheduled time, in ISO 8601 format, when the channel can send messages.

                          • EndTime — (String)

                            The end of the scheduled time, in ISO 8601 format, when the channel can't send messages.

                      • ClosedDays — (map)

                        The time when a journey will not send messages. QuietTime should be configured first and SendingSchedule should be set to true.

                        • EMAIL — (Array<map>)

                          Rules for the Email channel.

                          • Name — (String)

                            The name of the closed day rule.

                          • StartDateTime — (String)

                            Start DateTime ISO 8601 format

                          • EndDateTime — (String)

                            End DateTime ISO 8601 format

                        • SMS — (Array<map>)

                          Rules for the SMS channel.

                          • Name — (String)

                            The name of the closed day rule.

                          • StartDateTime — (String)

                            Start DateTime ISO 8601 format

                          • EndDateTime — (String)

                            End DateTime ISO 8601 format

                        • PUSH — (Array<map>)

                          Rules for the Push channel.

                          • Name — (String)

                            The name of the closed day rule.

                          • StartDateTime — (String)

                            Start DateTime ISO 8601 format

                          • EndDateTime — (String)

                            End DateTime ISO 8601 format

                        • VOICE — (Array<map>)

                          Rules for the Voice channel.

                          • Name — (String)

                            The name of the closed day rule.

                          • StartDateTime — (String)

                            Start DateTime ISO 8601 format

                          • EndDateTime — (String)

                            End DateTime ISO 8601 format

                        • CUSTOM — (Array<map>)

                          Rules for the Custom channel.

                          • Name — (String)

                            The name of the closed day rule.

                          • StartDateTime — (String)

                            Start DateTime ISO 8601 format

                          • EndDateTime — (String)

                            End DateTime ISO 8601 format

                      • TimezoneEstimationMethods — (Array<String>)

                        An array of time zone estimation methods, if any, to use for determining an Endpoints time zone if the Endpoint does not have a value for the Demographic.Timezone attribute.

                        • PHONE_NUMBER - A time zone is determined based on the Endpoint.Address and Endpoint.Location.Country.

                        • POSTAL_CODE - A time zone is determined based on the Endpoint.Location.PostalCode and Endpoint.Location.Country.

                          Note: POSTAL_CODE detection is only supported in the United States, United Kingdom, Australia, New Zealand, Canada, France, Italy, Spain, Germany and in regions where Amazon Pinpoint is available.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

updatePushTemplate(params = {}, callback) ⇒ AWS.Request

Updates an existing message template for messages that are sent through a push notification channel.

Service Reference:

Examples:

Calling the updatePushTemplate operation

var params = {
  PushNotificationTemplateRequest: { /* required */
    ADM: {
      Action: OPEN_APP | DEEP_LINK | URL,
      Body: 'STRING_VALUE',
      ImageIconUrl: 'STRING_VALUE',
      ImageUrl: 'STRING_VALUE',
      RawContent: 'STRING_VALUE',
      SmallImageIconUrl: 'STRING_VALUE',
      Sound: 'STRING_VALUE',
      Title: 'STRING_VALUE',
      Url: 'STRING_VALUE'
    },
    APNS: {
      Action: OPEN_APP | DEEP_LINK | URL,
      Body: 'STRING_VALUE',
      MediaUrl: 'STRING_VALUE',
      RawContent: 'STRING_VALUE',
      Sound: 'STRING_VALUE',
      Title: 'STRING_VALUE',
      Url: 'STRING_VALUE'
    },
    Baidu: {
      Action: OPEN_APP | DEEP_LINK | URL,
      Body: 'STRING_VALUE',
      ImageIconUrl: 'STRING_VALUE',
      ImageUrl: 'STRING_VALUE',
      RawContent: 'STRING_VALUE',
      SmallImageIconUrl: 'STRING_VALUE',
      Sound: 'STRING_VALUE',
      Title: 'STRING_VALUE',
      Url: 'STRING_VALUE'
    },
    Default: {
      Action: OPEN_APP | DEEP_LINK | URL,
      Body: 'STRING_VALUE',
      Sound: 'STRING_VALUE',
      Title: 'STRING_VALUE',
      Url: 'STRING_VALUE'
    },
    DefaultSubstitutions: 'STRING_VALUE',
    GCM: {
      Action: OPEN_APP | DEEP_LINK | URL,
      Body: 'STRING_VALUE',
      ImageIconUrl: 'STRING_VALUE',
      ImageUrl: 'STRING_VALUE',
      RawContent: 'STRING_VALUE',
      SmallImageIconUrl: 'STRING_VALUE',
      Sound: 'STRING_VALUE',
      Title: 'STRING_VALUE',
      Url: 'STRING_VALUE'
    },
    RecommenderId: 'STRING_VALUE',
    TemplateDescription: 'STRING_VALUE',
    tags: {
      '<__string>': 'STRING_VALUE',
      /* '<__string>': ... */
    }
  },
  TemplateName: 'STRING_VALUE', /* required */
  CreateNewVersion: true || false,
  Version: 'STRING_VALUE'
};
pinpoint.updatePushTemplate(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • CreateNewVersion — (Boolean)

      Specifies whether to save the updates as a new version of the message template. Valid values are: true, save the updates as a new version; and, false, save the updates to (overwrite) the latest existing version of the template.

      If you don't specify a value for this parameter, Amazon Pinpoint saves the updates to (overwrites) the latest existing version of the template. If you specify a value of true for this parameter, don't specify a value for the version parameter. Otherwise, an error will occur.

    • PushNotificationTemplateRequest — (map)

      Specifies the content and settings for a message template that can be used in messages that are sent through a push notification channel.

      • ADM — (map)

        The message template to use for the ADM (Amazon Device Messaging) channel. This message template overrides the default template for push notification channels (DefaultPushNotificationTemplate).

        • Action — (String)

          The action to occur if a recipient taps a push notification that's based on the message template. Valid values are:

          • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

          • DEEP_LINK - Your app opens and displays a designated user interface in the app. This action uses the deep-linking features of the Android platform.

          • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

          Possible values include:
          • "OPEN_APP"
          • "DEEP_LINK"
          • "URL"
        • Body — (String)

          The message body to use in a push notification that's based on the message template.

        • ImageIconUrl — (String)

          The URL of the large icon image to display in the content view of a push notification that's based on the message template.

        • ImageUrl — (String)

          The URL of an image to display in a push notification that's based on the message template.

        • RawContent — (String)

          The raw, JSON-formatted string to use as the payload for a push notification that's based on the message template. If specified, this value overrides all other content for the message template.

        • SmallImageIconUrl — (String)

          The URL of the small icon image to display in the status bar and the content view of a push notification that's based on the message template.

        • Sound — (String)

          The sound to play when a recipient receives a push notification that's based on the message template. You can use the default stream or specify the file name of a sound resource that's bundled in your app. On an Android platform, the sound file must reside in /res/raw/.

        • Title — (String)

          The title to use in a push notification that's based on the message template. This title appears above the notification message on a recipient's device.

        • Url — (String)

          The URL to open in a recipient's default mobile browser, if a recipient taps a push notification that's based on the message template and the value of the Action property is URL.

      • APNS — (map)

        The message template to use for the APNs (Apple Push Notification service) channel. This message template overrides the default template for push notification channels (DefaultPushNotificationTemplate).

        • Action — (String)

          The action to occur if a recipient taps a push notification that's based on the message template. Valid values are:

          • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

          • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of the iOS platform.

          • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

          Possible values include:
          • "OPEN_APP"
          • "DEEP_LINK"
          • "URL"
        • Body — (String)

          The message body to use in push notifications that are based on the message template.

        • MediaUrl — (String)

          The URL of an image or video to display in push notifications that are based on the message template.

        • RawContent — (String)

          The raw, JSON-formatted string to use as the payload for push notifications that are based on the message template. If specified, this value overrides all other content for the message template.

        • Sound — (String)

          The key for the sound to play when the recipient receives a push notification that's based on the message template. The value for this key is the name of a sound file in your app's main bundle or the Library/Sounds folder in your app's data container. If the sound file can't be found or you specify default for the value, the system plays the default alert sound.

        • Title — (String)

          The title to use in push notifications that are based on the message template. This title appears above the notification message on a recipient's device.

        • Url — (String)

          The URL to open in the recipient's default mobile browser, if a recipient taps a push notification that's based on the message template and the value of the Action property is URL.

      • Baidu — (map)

        The message template to use for the Baidu (Baidu Cloud Push) channel. This message template overrides the default template for push notification channels (DefaultPushNotificationTemplate).

        • Action — (String)

          The action to occur if a recipient taps a push notification that's based on the message template. Valid values are:

          • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

          • DEEP_LINK - Your app opens and displays a designated user interface in the app. This action uses the deep-linking features of the Android platform.

          • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

          Possible values include:
          • "OPEN_APP"
          • "DEEP_LINK"
          • "URL"
        • Body — (String)

          The message body to use in a push notification that's based on the message template.

        • ImageIconUrl — (String)

          The URL of the large icon image to display in the content view of a push notification that's based on the message template.

        • ImageUrl — (String)

          The URL of an image to display in a push notification that's based on the message template.

        • RawContent — (String)

          The raw, JSON-formatted string to use as the payload for a push notification that's based on the message template. If specified, this value overrides all other content for the message template.

        • SmallImageIconUrl — (String)

          The URL of the small icon image to display in the status bar and the content view of a push notification that's based on the message template.

        • Sound — (String)

          The sound to play when a recipient receives a push notification that's based on the message template. You can use the default stream or specify the file name of a sound resource that's bundled in your app. On an Android platform, the sound file must reside in /res/raw/.

        • Title — (String)

          The title to use in a push notification that's based on the message template. This title appears above the notification message on a recipient's device.

        • Url — (String)

          The URL to open in a recipient's default mobile browser, if a recipient taps a push notification that's based on the message template and the value of the Action property is URL.

      • Default — (map)

        The default message template to use for push notification channels.

        • Action — (String)

          The action to occur if a recipient taps a push notification that's based on the message template. Valid values are:

          • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

          • DEEP_LINK - Your app opens and displays a designated user interface in the app. This setting uses the deep-linking features of the iOS and Android platforms.

          • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

          Possible values include:
          • "OPEN_APP"
          • "DEEP_LINK"
          • "URL"
        • Body — (String)

          The message body to use in push notifications that are based on the message template.

        • Sound — (String)

          The sound to play when a recipient receives a push notification that's based on the message template. You can use the default stream or specify the file name of a sound resource that's bundled in your app. On an Android platform, the sound file must reside in /res/raw/.

          For an iOS platform, this value is the key for the name of a sound file in your app's main bundle or the Library/Sounds folder in your app's data container. If the sound file can't be found or you specify default for the value, the system plays the default alert sound.

        • Title — (String)

          The title to use in push notifications that are based on the message template. This title appears above the notification message on a recipient's device.

        • Url — (String)

          The URL to open in a recipient's default mobile browser, if a recipient taps a push notification that's based on the message template and the value of the Action property is URL.

      • DefaultSubstitutions — (String)

        A JSON object that specifies the default values to use for message variables in the message template. This object is a set of key-value pairs. Each key defines a message variable in the template. The corresponding value defines the default value for that variable. When you create a message that's based on the template, you can override these defaults with message-specific and address-specific variables and values.

      • GCM — (map)

        The message template to use for the GCM channel, which is used to send notifications through the Firebase Cloud Messaging (FCM), formerly Google Cloud Messaging (GCM), service. This message template overrides the default template for push notification channels (DefaultPushNotificationTemplate).

        • Action — (String)

          The action to occur if a recipient taps a push notification that's based on the message template. Valid values are:

          • OPEN_APP - Your app opens or it becomes the foreground app if it was sent to the background. This is the default action.

          • DEEP_LINK - Your app opens and displays a designated user interface in the app. This action uses the deep-linking features of the Android platform.

          • URL - The default mobile browser on the recipient's device opens and loads the web page at a URL that you specify.

          Possible values include:
          • "OPEN_APP"
          • "DEEP_LINK"
          • "URL"
        • Body — (String)

          The message body to use in a push notification that's based on the message template.

        • ImageIconUrl — (String)

          The URL of the large icon image to display in the content view of a push notification that's based on the message template.

        • ImageUrl — (String)

          The URL of an image to display in a push notification that's based on the message template.

        • RawContent — (String)

          The raw, JSON-formatted string to use as the payload for a push notification that's based on the message template. If specified, this value overrides all other content for the message template.

        • SmallImageIconUrl — (String)

          The URL of the small icon image to display in the status bar and the content view of a push notification that's based on the message template.

        • Sound — (String)

          The sound to play when a recipient receives a push notification that's based on the message template. You can use the default stream or specify the file name of a sound resource that's bundled in your app. On an Android platform, the sound file must reside in /res/raw/.

        • Title — (String)

          The title to use in a push notification that's based on the message template. This title appears above the notification message on a recipient's device.

        • Url — (String)

          The URL to open in a recipient's default mobile browser, if a recipient taps a push notification that's based on the message template and the value of the Action property is URL.

      • RecommenderId — (String)

        The unique identifier for the recommender model to use for the message template. Amazon Pinpoint uses this value to determine how to retrieve and process data from a recommender model when it sends messages that use the template, if the template contains message variables for recommendation data.

      • tags — (map<String>)
        Note: As of 22-05-2023 tags has been deprecated for update operations. After this date any value in tags is not processed and an error code is not returned. To manage tags we recommend using either Tags in the API Reference for Amazon Pinpoint, resourcegroupstaggingapi commands in the AWS Command Line Interface Documentation or resourcegroupstaggingapi in the AWS SDK.

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

      • TemplateDescription — (String)

        A custom description of the message template.

    • TemplateName — (String)

      The name of the message template. A template name must start with an alphanumeric character and can contain a maximum of 128 characters. The characters can be alphanumeric characters, underscores (_), or hyphens (-). Template names are case sensitive.

    • Version — (String)

      The unique identifier for the version of the message template to update, retrieve information about, or delete. To retrieve identifiers and other information for all the versions of a template, use the Template Versions resource.

      If specified, this value must match the identifier for an existing template version. If specified for an update operation, this value must match the identifier for the latest existing version of the template. This restriction helps ensure that race conditions don't occur.

      If you don't specify a value for this parameter, Amazon Pinpoint does the following:

      • For a get operation, retrieves information about the active version of the template.

      • For an update operation, saves the updates to (overwrites) the latest existing version of the template, if the create-new-version parameter isn't used or is set to false.

      • For a delete operation, deletes the template, including all versions of the template.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • MessageBody — (map)

        Provides information about an API request or response.

        • Message — (String)

          The message that's returned from the API.

        • RequestID — (String)

          The unique identifier for the request or response.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

updateRecommenderConfiguration(params = {}, callback) ⇒ AWS.Request

Updates an Amazon Pinpoint configuration for a recommender model.

Service Reference:

Examples:

Calling the updateRecommenderConfiguration operation

var params = {
  RecommenderId: 'STRING_VALUE', /* required */
  UpdateRecommenderConfiguration: { /* required */
    RecommendationProviderRoleArn: 'STRING_VALUE', /* required */
    RecommendationProviderUri: 'STRING_VALUE', /* required */
    Attributes: {
      '<__string>': 'STRING_VALUE',
      /* '<__string>': ... */
    },
    Description: 'STRING_VALUE',
    Name: 'STRING_VALUE',
    RecommendationProviderIdType: 'STRING_VALUE',
    RecommendationTransformerUri: 'STRING_VALUE',
    RecommendationsDisplayName: 'STRING_VALUE',
    RecommendationsPerMessage: 'NUMBER_VALUE'
  }
};
pinpoint.updateRecommenderConfiguration(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • RecommenderId — (String)

      The unique identifier for the recommender model configuration. This identifier is displayed as the Recommender ID on the Amazon Pinpoint console.

    • UpdateRecommenderConfiguration — (map)

      Specifies Amazon Pinpoint configuration settings for retrieving and processing recommendation data from a recommender model.

      • Attributes — (map<String>)

        A map of key-value pairs that defines 1-10 custom endpoint or user attributes, depending on the value for the RecommendationProviderIdType property. Each of these attributes temporarily stores a recommended item that's retrieved from the recommender model and sent to an AWS Lambda function for additional processing. Each attribute can be used as a message variable in a message template.

        In the map, the key is the name of a custom attribute and the value is a custom display name for that attribute. The display name appears in the Attribute finder of the template editor on the Amazon Pinpoint console. The following restrictions apply to these names:

        • An attribute name must start with a letter or number and it can contain up to 50 characters. The characters can be letters, numbers, underscores (), or hyphens (-). Attribute names are case sensitive and must be unique.

        • An attribute display name must start with a letter or number and it can contain up to 25 characters. The characters can be letters, numbers, spaces, underscores (), or hyphens (-).

        This object is required if the configuration invokes an AWS Lambda function (RecommendationTransformerUri) to process recommendation data. Otherwise, don't include this object in your request.

      • Description — (String)

        A custom description of the configuration for the recommender model. The description can contain up to 128 characters. The characters can be letters, numbers, spaces, or the following symbols: _ ; () , ‐.

      • Name — (String)

        A custom name of the configuration for the recommender model. The name must start with a letter or number and it can contain up to 128 characters. The characters can be letters, numbers, spaces, underscores (_), or hyphens (-).

      • RecommendationProviderIdType — (String)

        The type of Amazon Pinpoint ID to associate with unique user IDs in the recommender model. This value enables the model to use attribute and event data that’s specific to a particular endpoint or user in an Amazon Pinpoint application. Valid values are:

        • PINPOINT_ENDPOINT_ID - Associate each user in the model with a particular endpoint in Amazon Pinpoint. The data is correlated based on endpoint IDs in Amazon Pinpoint. This is the default value.

        • PINPOINT_USER_ID - Associate each user in the model with a particular user and endpoint in Amazon Pinpoint. The data is correlated based on user IDs in Amazon Pinpoint. If you specify this value, an endpoint definition in Amazon Pinpoint has to specify both a user ID (UserId) and an endpoint ID. Otherwise, messages won’t be sent to the user's endpoint.

      • RecommendationProviderRoleArnrequired — (String)

        The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that authorizes Amazon Pinpoint to retrieve recommendation data from the recommender model.

      • RecommendationProviderUrirequired — (String)

        The Amazon Resource Name (ARN) of the recommender model to retrieve recommendation data from. This value must match the ARN of an Amazon Personalize campaign.

      • RecommendationTransformerUri — (String)

        The name or Amazon Resource Name (ARN) of the AWS Lambda function to invoke for additional processing of recommendation data that's retrieved from the recommender model.

      • RecommendationsDisplayName — (String)

        A custom display name for the standard endpoint or user attribute (RecommendationItems) that temporarily stores recommended items for each endpoint or user, depending on the value for the RecommendationProviderIdType property. This value is required if the configuration doesn't invoke an AWS Lambda function (RecommendationTransformerUri) to perform additional processing of recommendation data.

        This name appears in the Attribute finder of the template editor on the Amazon Pinpoint console. The name can contain up to 25 characters. The characters can be letters, numbers, spaces, underscores (_), or hyphens (-). These restrictions don't apply to attribute values.

      • RecommendationsPerMessage — (Integer)

        The number of recommended items to retrieve from the model for each endpoint or user, depending on the value for the RecommendationProviderIdType property. This number determines how many recommended items are available for use in message variables. The minimum value is 1. The maximum value is 5. The default value is 5.

        To use multiple recommended items and custom attributes with message variables, you have to use an AWS Lambda function (RecommendationTransformerUri) to perform additional processing of recommendation data.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • RecommenderConfigurationResponse — (map)

        Provides information about Amazon Pinpoint configuration settings for retrieving and processing data from a recommender model.

        • Attributes — (map<String>)

          A map that defines 1-10 custom endpoint or user attributes, depending on the value for the RecommendationProviderIdType property. Each of these attributes temporarily stores a recommended item that's retrieved from the recommender model and sent to an AWS Lambda function for additional processing. Each attribute can be used as a message variable in a message template.

          This value is null if the configuration doesn't invoke an AWS Lambda function (RecommendationTransformerUri) to perform additional processing of recommendation data.

        • CreationDaterequired — (String)

          The date, in extended ISO 8601 format, when the configuration was created for the recommender model.

        • Description — (String)

          The custom description of the configuration for the recommender model.

        • Idrequired — (String)

          The unique identifier for the recommender model configuration.

        • LastModifiedDaterequired — (String)

          The date, in extended ISO 8601 format, when the configuration for the recommender model was last modified.

        • Name — (String)

          The custom name of the configuration for the recommender model.

        • RecommendationProviderIdType — (String)

          The type of Amazon Pinpoint ID that's associated with unique user IDs in the recommender model. This value enables the model to use attribute and event data that’s specific to a particular endpoint or user in an Amazon Pinpoint application. Possible values are:

          • PINPOINT_ENDPOINT_ID - Each user in the model is associated with a particular endpoint in Amazon Pinpoint. The data is correlated based on endpoint IDs in Amazon Pinpoint. This is the default value.

          • PINPOINT_USER_ID - Each user in the model is associated with a particular user and endpoint in Amazon Pinpoint. The data is correlated based on user IDs in Amazon Pinpoint. If this value is specified, an endpoint definition in Amazon Pinpoint has to specify both a user ID (UserId) and an endpoint ID. Otherwise, messages won’t be sent to the user's endpoint.

        • RecommendationProviderRoleArnrequired — (String)

          The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that authorizes Amazon Pinpoint to retrieve recommendation data from the recommender model.

        • RecommendationProviderUrirequired — (String)

          The Amazon Resource Name (ARN) of the recommender model that Amazon Pinpoint retrieves the recommendation data from. This value is the ARN of an Amazon Personalize campaign.

        • RecommendationTransformerUri — (String)

          The name or Amazon Resource Name (ARN) of the AWS Lambda function that Amazon Pinpoint invokes to perform additional processing of recommendation data that it retrieves from the recommender model.

        • RecommendationsDisplayName — (String)

          The custom display name for the standard endpoint or user attribute (RecommendationItems) that temporarily stores recommended items for each endpoint or user, depending on the value for the RecommendationProviderIdType property. This name appears in the Attribute finder of the template editor on the Amazon Pinpoint console.

          This value is null if the configuration doesn't invoke an AWS Lambda function (RecommendationTransformerUri) to perform additional processing of recommendation data.

        • RecommendationsPerMessage — (Integer)

          The number of recommended items that are retrieved from the model for each endpoint or user, depending on the value for the RecommendationProviderIdType property. This number determines how many recommended items are available for use in message variables.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

updateSegment(params = {}, callback) ⇒ AWS.Request

Creates a new segment for an application or updates the configuration, dimension, and other settings for an existing segment that's associated with an application.

Service Reference:

Examples:

Calling the updateSegment operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  SegmentId: 'STRING_VALUE', /* required */
  WriteSegmentRequest: { /* required */
    Dimensions: {
      Attributes: {
        '<__string>': {
          Values: [ /* required */
            'STRING_VALUE',
            /* more items */
          ],
          AttributeType: INCLUSIVE | EXCLUSIVE | CONTAINS | BEFORE | AFTER | ON | BETWEEN
        },
        /* '<__string>': ... */
      },
      Behavior: {
        Recency: {
          Duration: HR_24 | DAY_7 | DAY_14 | DAY_30, /* required */
          RecencyType: ACTIVE | INACTIVE /* required */
        }
      },
      Demographic: {
        AppVersion: {
          Values: [ /* required */
            'STRING_VALUE',
            /* more items */
          ],
          DimensionType: INCLUSIVE | EXCLUSIVE
        },
        Channel: {
          Values: [ /* required */
            'STRING_VALUE',
            /* more items */
          ],
          DimensionType: INCLUSIVE | EXCLUSIVE
        },
        DeviceType: {
          Values: [ /* required */
            'STRING_VALUE',
            /* more items */
          ],
          DimensionType: INCLUSIVE | EXCLUSIVE
        },
        Make: {
          Values: [ /* required */
            'STRING_VALUE',
            /* more items */
          ],
          DimensionType: INCLUSIVE | EXCLUSIVE
        },
        Model: {
          Values: [ /* required */
            'STRING_VALUE',
            /* more items */
          ],
          DimensionType: INCLUSIVE | EXCLUSIVE
        },
        Platform: {
          Values: [ /* required */
            'STRING_VALUE',
            /* more items */
          ],
          DimensionType: INCLUSIVE | EXCLUSIVE
        }
      },
      Location: {
        Country: {
          Values: [ /* required */
            'STRING_VALUE',
            /* more items */
          ],
          DimensionType: INCLUSIVE | EXCLUSIVE
        },
        GPSPoint: {
          Coordinates: { /* required */
            Latitude: 'NUMBER_VALUE', /* required */
            Longitude: 'NUMBER_VALUE' /* required */
          },
          RangeInKilometers: 'NUMBER_VALUE'
        }
      },
      Metrics: {
        '<__string>': {
          ComparisonOperator: 'STRING_VALUE', /* required */
          Value: 'NUMBER_VALUE' /* required */
        },
        /* '<__string>': ... */
      },
      UserAttributes: {
        '<__string>': {
          Values: [ /* required */
            'STRING_VALUE',
            /* more items */
          ],
          AttributeType: INCLUSIVE | EXCLUSIVE | CONTAINS | BEFORE | AFTER | ON | BETWEEN
        },
        /* '<__string>': ... */
      }
    },
    Name: 'STRING_VALUE',
    SegmentGroups: {
      Groups: [
        {
          Dimensions: [
            {
              Attributes: {
                '<__string>': {
                  Values: [ /* required */
                    'STRING_VALUE',
                    /* more items */
                  ],
                  AttributeType: INCLUSIVE | EXCLUSIVE | CONTAINS | BEFORE | AFTER | ON | BETWEEN
                },
                /* '<__string>': ... */
              },
              Behavior: {
                Recency: {
                  Duration: HR_24 | DAY_7 | DAY_14 | DAY_30, /* required */
                  RecencyType: ACTIVE | INACTIVE /* required */
                }
              },
              Demographic: {
                AppVersion: {
                  Values: [ /* required */
                    'STRING_VALUE',
                    /* more items */
                  ],
                  DimensionType: INCLUSIVE | EXCLUSIVE
                },
                Channel: {
                  Values: [ /* required */
                    'STRING_VALUE',
                    /* more items */
                  ],
                  DimensionType: INCLUSIVE | EXCLUSIVE
                },
                DeviceType: {
                  Values: [ /* required */
                    'STRING_VALUE',
                    /* more items */
                  ],
                  DimensionType: INCLUSIVE | EXCLUSIVE
                },
                Make: {
                  Values: [ /* required */
                    'STRING_VALUE',
                    /* more items */
                  ],
                  DimensionType: INCLUSIVE | EXCLUSIVE
                },
                Model: {
                  Values: [ /* required */
                    'STRING_VALUE',
                    /* more items */
                  ],
                  DimensionType: INCLUSIVE | EXCLUSIVE
                },
                Platform: {
                  Values: [ /* required */
                    'STRING_VALUE',
                    /* more items */
                  ],
                  DimensionType: INCLUSIVE | EXCLUSIVE
                }
              },
              Location: {
                Country: {
                  Values: [ /* required */
                    'STRING_VALUE',
                    /* more items */
                  ],
                  DimensionType: INCLUSIVE | EXCLUSIVE
                },
                GPSPoint: {
                  Coordinates: { /* required */
                    Latitude: 'NUMBER_VALUE', /* required */
                    Longitude: 'NUMBER_VALUE' /* required */
                  },
                  RangeInKilometers: 'NUMBER_VALUE'
                }
              },
              Metrics: {
                '<__string>': {
                  ComparisonOperator: 'STRING_VALUE', /* required */
                  Value: 'NUMBER_VALUE' /* required */
                },
                /* '<__string>': ... */
              },
              UserAttributes: {
                '<__string>': {
                  Values: [ /* required */
                    'STRING_VALUE',
                    /* more items */
                  ],
                  AttributeType: INCLUSIVE | EXCLUSIVE | CONTAINS | BEFORE | AFTER | ON | BETWEEN
                },
                /* '<__string>': ... */
              }
            },
            /* more items */
          ],
          SourceSegments: [
            {
              Id: 'STRING_VALUE', /* required */
              Version: 'NUMBER_VALUE'
            },
            /* more items */
          ],
          SourceType: ALL | ANY | NONE,
          Type: ALL | ANY | NONE
        },
        /* more items */
      ],
      Include: ALL | ANY | NONE
    },
    tags: {
      '<__string>': 'STRING_VALUE',
      /* '<__string>': ... */
    }
  }
};
pinpoint.updateSegment(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • SegmentId — (String)

      The unique identifier for the segment.

    • WriteSegmentRequest — (map)

      Specifies the configuration, dimension, and other settings for a segment. A WriteSegmentRequest object can include a Dimensions object or a SegmentGroups object, but not both.

      • Dimensions — (map)

        The criteria that define the dimensions for the segment.

        • Attributes — (map<map>)

          One or more custom attributes to use as criteria for the segment.

          • AttributeType — (String)

            The type of segment dimension to use. Valid values are:

            • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
            • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
            • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
            • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
            • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
            • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
            • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
            • Possible values include:
              • "INCLUSIVE"
              • "EXCLUSIVE"
              • "CONTAINS"
              • "BEFORE"
              • "AFTER"
              • "ON"
              • "BETWEEN"
            • Valuesrequired — (Array<String>)

              The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

          • Behavior — (map)

            The behavior-based criteria, such as how recently users have used your app, for the segment.

            • Recency — (map)

              The dimension settings that are based on how recently an endpoint was active.

              • Durationrequired — (String)

                The duration to use when determining whether an endpoint is active or inactive.

                Possible values include:
                • "HR_24"
                • "DAY_7"
                • "DAY_14"
                • "DAY_30"
              • RecencyTyperequired — (String)

                The type of recency dimension to use for the segment. Valid values are: ACTIVE, endpoints that were active within the specified duration are included in the segment; and, INACTIVE, endpoints that weren't active within the specified duration are included in the segment.

                Possible values include:
                • "ACTIVE"
                • "INACTIVE"
          • Demographic — (map)

            The demographic-based criteria, such as device platform, for the segment.

            • AppVersion — (map)

              The app version criteria for the segment.

              • DimensionType — (String)

                The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                Possible values include:
                • "INCLUSIVE"
                • "EXCLUSIVE"
              • Valuesrequired — (Array<String>)

                The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

            • Channel — (map)

              The channel criteria for the segment.

              • DimensionType — (String)

                The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                Possible values include:
                • "INCLUSIVE"
                • "EXCLUSIVE"
              • Valuesrequired — (Array<String>)

                The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

            • DeviceType — (map)

              The device type criteria for the segment.

              • DimensionType — (String)

                The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                Possible values include:
                • "INCLUSIVE"
                • "EXCLUSIVE"
              • Valuesrequired — (Array<String>)

                The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

            • Make — (map)

              The device make criteria for the segment.

              • DimensionType — (String)

                The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                Possible values include:
                • "INCLUSIVE"
                • "EXCLUSIVE"
              • Valuesrequired — (Array<String>)

                The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

            • Model — (map)

              The device model criteria for the segment.

              • DimensionType — (String)

                The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                Possible values include:
                • "INCLUSIVE"
                • "EXCLUSIVE"
              • Valuesrequired — (Array<String>)

                The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

            • Platform — (map)

              The device platform criteria for the segment.

              • DimensionType — (String)

                The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                Possible values include:
                • "INCLUSIVE"
                • "EXCLUSIVE"
              • Valuesrequired — (Array<String>)

                The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

          • Location — (map)

            The location-based criteria, such as region or GPS coordinates, for the segment.

            • Country — (map)

              The country or region code, in ISO 3166-1 alpha-2 format, for the segment.

              • DimensionType — (String)

                The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                Possible values include:
                • "INCLUSIVE"
                • "EXCLUSIVE"
              • Valuesrequired — (Array<String>)

                The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

            • GPSPoint — (map)

              The GPS location and range for the segment.

              • Coordinatesrequired — (map)

                The GPS coordinates to measure distance from.

                • Latituderequired — (Float)

                  The latitude coordinate of the location.

                • Longituderequired — (Float)

                  The longitude coordinate of the location.

              • RangeInKilometers — (Float)

                The range, in kilometers, from the GPS coordinates.

          • Metrics — (map<map>)

            One or more custom metrics to use as criteria for the segment.

            • ComparisonOperatorrequired — (String)

              The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

            • Valuerequired — (Float)

              The value to compare.

          • UserAttributes — (map<map>)

            One or more custom user attributes to use as criteria for the segment.

            • AttributeType — (String)

              The type of segment dimension to use. Valid values are:

              • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
              • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
              • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
              • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
              • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
              • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
              • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
              • Possible values include:
                • "INCLUSIVE"
                • "EXCLUSIVE"
                • "CONTAINS"
                • "BEFORE"
                • "AFTER"
                • "ON"
                • "BETWEEN"
              • Valuesrequired — (Array<String>)

                The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

          • Name — (String)

            The name of the segment.

          • SegmentGroups — (map)

            The segment group to use and the dimensions to apply to the group's base segments in order to build the segment. A segment group can consist of zero or more base segments. Your request can include only one segment group.

            • Groups — (Array<map>)

              An array that defines the set of segment criteria to evaluate when handling segment groups for the segment.

              • Dimensions — (Array<map>)

                An array that defines the dimensions for the segment.

                • Attributes — (map<map>)

                  One or more custom attributes to use as criteria for the segment.

                  • AttributeType — (String)

                    The type of segment dimension to use. Valid values are:

                    • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                    • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                    • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                    • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                    • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                    • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                    • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                    • Possible values include:
                      • "INCLUSIVE"
                      • "EXCLUSIVE"
                      • "CONTAINS"
                      • "BEFORE"
                      • "AFTER"
                      • "ON"
                      • "BETWEEN"
                    • Valuesrequired — (Array<String>)

                      The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                  • Behavior — (map)

                    The behavior-based criteria, such as how recently users have used your app, for the segment.

                    • Recency — (map)

                      The dimension settings that are based on how recently an endpoint was active.

                      • Durationrequired — (String)

                        The duration to use when determining whether an endpoint is active or inactive.

                        Possible values include:
                        • "HR_24"
                        • "DAY_7"
                        • "DAY_14"
                        • "DAY_30"
                      • RecencyTyperequired — (String)

                        The type of recency dimension to use for the segment. Valid values are: ACTIVE, endpoints that were active within the specified duration are included in the segment; and, INACTIVE, endpoints that weren't active within the specified duration are included in the segment.

                        Possible values include:
                        • "ACTIVE"
                        • "INACTIVE"
                  • Demographic — (map)

                    The demographic-based criteria, such as device platform, for the segment.

                    • AppVersion — (map)

                      The app version criteria for the segment.

                      • DimensionType — (String)

                        The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                        Possible values include:
                        • "INCLUSIVE"
                        • "EXCLUSIVE"
                      • Valuesrequired — (Array<String>)

                        The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                    • Channel — (map)

                      The channel criteria for the segment.

                      • DimensionType — (String)

                        The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                        Possible values include:
                        • "INCLUSIVE"
                        • "EXCLUSIVE"
                      • Valuesrequired — (Array<String>)

                        The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                    • DeviceType — (map)

                      The device type criteria for the segment.

                      • DimensionType — (String)

                        The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                        Possible values include:
                        • "INCLUSIVE"
                        • "EXCLUSIVE"
                      • Valuesrequired — (Array<String>)

                        The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                    • Make — (map)

                      The device make criteria for the segment.

                      • DimensionType — (String)

                        The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                        Possible values include:
                        • "INCLUSIVE"
                        • "EXCLUSIVE"
                      • Valuesrequired — (Array<String>)

                        The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                    • Model — (map)

                      The device model criteria for the segment.

                      • DimensionType — (String)

                        The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                        Possible values include:
                        • "INCLUSIVE"
                        • "EXCLUSIVE"
                      • Valuesrequired — (Array<String>)

                        The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                    • Platform — (map)

                      The device platform criteria for the segment.

                      • DimensionType — (String)

                        The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                        Possible values include:
                        • "INCLUSIVE"
                        • "EXCLUSIVE"
                      • Valuesrequired — (Array<String>)

                        The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                  • Location — (map)

                    The location-based criteria, such as region or GPS coordinates, for the segment.

                    • Country — (map)

                      The country or region code, in ISO 3166-1 alpha-2 format, for the segment.

                      • DimensionType — (String)

                        The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                        Possible values include:
                        • "INCLUSIVE"
                        • "EXCLUSIVE"
                      • Valuesrequired — (Array<String>)

                        The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                    • GPSPoint — (map)

                      The GPS location and range for the segment.

                      • Coordinatesrequired — (map)

                        The GPS coordinates to measure distance from.

                        • Latituderequired — (Float)

                          The latitude coordinate of the location.

                        • Longituderequired — (Float)

                          The longitude coordinate of the location.

                      • RangeInKilometers — (Float)

                        The range, in kilometers, from the GPS coordinates.

                  • Metrics — (map<map>)

                    One or more custom metrics to use as criteria for the segment.

                    • ComparisonOperatorrequired — (String)

                      The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                    • Valuerequired — (Float)

                      The value to compare.

                  • UserAttributes — (map<map>)

                    One or more custom user attributes to use as criteria for the segment.

                    • AttributeType — (String)

                      The type of segment dimension to use. Valid values are:

                      • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                      • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                      • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                      • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                      • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                      • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                      • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                      • Possible values include:
                        • "INCLUSIVE"
                        • "EXCLUSIVE"
                        • "CONTAINS"
                        • "BEFORE"
                        • "AFTER"
                        • "ON"
                        • "BETWEEN"
                      • Valuesrequired — (Array<String>)

                        The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                  • SourceSegments — (Array<map>)

                    The base segment to build the segment on. A base segment, also referred to as a source segment, defines the initial population of endpoints for a segment. When you add dimensions to a segment, Amazon Pinpoint filters the base segment by using the dimensions that you specify.

                    You can specify more than one dimensional segment or only one imported segment. If you specify an imported segment, the Amazon Pinpoint console displays a segment size estimate that indicates the size of the imported segment without any filters applied to it.

                    • Idrequired — (String)

                      The unique identifier for the segment.

                    • Version — (Integer)

                      The version number of the segment.

                  • SourceType — (String)

                    Specifies how to handle multiple base segments for the segment. For example, if you specify three base segments for the segment, whether the resulting segment is based on all, any, or none of the base segments.

                    Possible values include:
                    • "ALL"
                    • "ANY"
                    • "NONE"
                  • Type — (String)

                    Specifies how to handle multiple dimensions for the segment. For example, if you specify three dimensions for the segment, whether the resulting segment includes endpoints that match all, any, or none of the dimensions.

                    Possible values include:
                    • "ALL"
                    • "ANY"
                    • "NONE"
                • Include — (String)

                  Specifies how to handle multiple segment groups for the segment. For example, if the segment includes three segment groups, whether the resulting segment includes endpoints that match all, any, or none of the segment groups.

                  Possible values include:
                  • "ALL"
                  • "ANY"
                  • "NONE"
              • tags — (map<String>)
                Note: As of 22-05-2023 tags has been deprecated for update operations. After this date any value in tags is not processed and an error code is not returned. To manage tags we recommend using either Tags in the API Reference for Amazon Pinpoint, resourcegroupstaggingapi commands in the AWS Command Line Interface Documentation or resourcegroupstaggingapi in the AWS SDK.

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

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • SegmentResponse — (map)

        Provides information about the configuration, dimension, and other settings for a segment.

        • ApplicationIdrequired — (String)

          The unique identifier for the application that the segment is associated with.

        • Arnrequired — (String)

          The Amazon Resource Name (ARN) of the segment.

        • CreationDaterequired — (String)

          The date and time when the segment was created.

        • Dimensions — (map)

          The dimension settings for the segment.

          • Attributes — (map<map>)

            One or more custom attributes to use as criteria for the segment.

            • AttributeType — (String)

              The type of segment dimension to use. Valid values are:

              • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
              • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
              • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
              • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
              • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
              • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
              • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
              • Possible values include:
                • "INCLUSIVE"
                • "EXCLUSIVE"
                • "CONTAINS"
                • "BEFORE"
                • "AFTER"
                • "ON"
                • "BETWEEN"
              • Valuesrequired — (Array<String>)

                The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

            • Behavior — (map)

              The behavior-based criteria, such as how recently users have used your app, for the segment.

              • Recency — (map)

                The dimension settings that are based on how recently an endpoint was active.

                • Durationrequired — (String)

                  The duration to use when determining whether an endpoint is active or inactive.

                  Possible values include:
                  • "HR_24"
                  • "DAY_7"
                  • "DAY_14"
                  • "DAY_30"
                • RecencyTyperequired — (String)

                  The type of recency dimension to use for the segment. Valid values are: ACTIVE, endpoints that were active within the specified duration are included in the segment; and, INACTIVE, endpoints that weren't active within the specified duration are included in the segment.

                  Possible values include:
                  • "ACTIVE"
                  • "INACTIVE"
            • Demographic — (map)

              The demographic-based criteria, such as device platform, for the segment.

              • AppVersion — (map)

                The app version criteria for the segment.

                • DimensionType — (String)

                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                  Possible values include:
                  • "INCLUSIVE"
                  • "EXCLUSIVE"
                • Valuesrequired — (Array<String>)

                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

              • Channel — (map)

                The channel criteria for the segment.

                • DimensionType — (String)

                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                  Possible values include:
                  • "INCLUSIVE"
                  • "EXCLUSIVE"
                • Valuesrequired — (Array<String>)

                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

              • DeviceType — (map)

                The device type criteria for the segment.

                • DimensionType — (String)

                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                  Possible values include:
                  • "INCLUSIVE"
                  • "EXCLUSIVE"
                • Valuesrequired — (Array<String>)

                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

              • Make — (map)

                The device make criteria for the segment.

                • DimensionType — (String)

                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                  Possible values include:
                  • "INCLUSIVE"
                  • "EXCLUSIVE"
                • Valuesrequired — (Array<String>)

                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

              • Model — (map)

                The device model criteria for the segment.

                • DimensionType — (String)

                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                  Possible values include:
                  • "INCLUSIVE"
                  • "EXCLUSIVE"
                • Valuesrequired — (Array<String>)

                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

              • Platform — (map)

                The device platform criteria for the segment.

                • DimensionType — (String)

                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                  Possible values include:
                  • "INCLUSIVE"
                  • "EXCLUSIVE"
                • Valuesrequired — (Array<String>)

                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

            • Location — (map)

              The location-based criteria, such as region or GPS coordinates, for the segment.

              • Country — (map)

                The country or region code, in ISO 3166-1 alpha-2 format, for the segment.

                • DimensionType — (String)

                  The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                  Possible values include:
                  • "INCLUSIVE"
                  • "EXCLUSIVE"
                • Valuesrequired — (Array<String>)

                  The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

              • GPSPoint — (map)

                The GPS location and range for the segment.

                • Coordinatesrequired — (map)

                  The GPS coordinates to measure distance from.

                  • Latituderequired — (Float)

                    The latitude coordinate of the location.

                  • Longituderequired — (Float)

                    The longitude coordinate of the location.

                • RangeInKilometers — (Float)

                  The range, in kilometers, from the GPS coordinates.

            • Metrics — (map<map>)

              One or more custom metrics to use as criteria for the segment.

              • ComparisonOperatorrequired — (String)

                The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

              • Valuerequired — (Float)

                The value to compare.

            • UserAttributes — (map<map>)

              One or more custom user attributes to use as criteria for the segment.

              • AttributeType — (String)

                The type of segment dimension to use. Valid values are:

                • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                • Possible values include:
                  • "INCLUSIVE"
                  • "EXCLUSIVE"
                  • "CONTAINS"
                  • "BEFORE"
                  • "AFTER"
                  • "ON"
                  • "BETWEEN"
                • Valuesrequired — (Array<String>)

                  The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

            • Idrequired — (String)

              The unique identifier for the segment.

            • ImportDefinition — (map)

              The settings for the import job that's associated with the segment.

              • ChannelCounts — (map<Integer>)

                The number of channel types in the endpoint definitions that were imported to create the segment.

              • ExternalIdrequired — (String)

                (Deprecated) Your AWS account ID, which you assigned to an external ID key in an IAM trust policy. Amazon Pinpoint previously used this value to assume an IAM role when importing endpoint definitions, but we removed this requirement. We don't recommend use of external IDs for IAM roles that are assumed by Amazon Pinpoint.

              • Formatrequired — (String)

                The format of the files that were imported to create the segment. Valid values are: CSV, for comma-separated values format; and, JSON, for newline-delimited JSON format.

                Possible values include:
                • "CSV"
                • "JSON"
              • RoleArnrequired — (String)

                The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that authorized Amazon Pinpoint to access the Amazon S3 location to import endpoint definitions from.

              • S3Urlrequired — (String)

                The URL of the Amazon Simple Storage Service (Amazon S3) bucket that the endpoint definitions were imported from to create the segment.

              • Sizerequired — (Integer)

                The number of endpoint definitions that were imported successfully to create the segment.

            • LastModifiedDate — (String)

              The date and time when the segment was last modified.

            • Name — (String)

              The name of the segment.

            • SegmentGroups — (map)

              A list of one or more segment groups that apply to the segment. Each segment group consists of zero or more base segments and the dimensions that are applied to those base segments.

              • Groups — (Array<map>)

                An array that defines the set of segment criteria to evaluate when handling segment groups for the segment.

                • Dimensions — (Array<map>)

                  An array that defines the dimensions for the segment.

                  • Attributes — (map<map>)

                    One or more custom attributes to use as criteria for the segment.

                    • AttributeType — (String)

                      The type of segment dimension to use. Valid values are:

                      • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                      • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                      • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                      • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                      • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                      • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                      • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                      • Possible values include:
                        • "INCLUSIVE"
                        • "EXCLUSIVE"
                        • "CONTAINS"
                        • "BEFORE"
                        • "AFTER"
                        • "ON"
                        • "BETWEEN"
                      • Valuesrequired — (Array<String>)

                        The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                    • Behavior — (map)

                      The behavior-based criteria, such as how recently users have used your app, for the segment.

                      • Recency — (map)

                        The dimension settings that are based on how recently an endpoint was active.

                        • Durationrequired — (String)

                          The duration to use when determining whether an endpoint is active or inactive.

                          Possible values include:
                          • "HR_24"
                          • "DAY_7"
                          • "DAY_14"
                          • "DAY_30"
                        • RecencyTyperequired — (String)

                          The type of recency dimension to use for the segment. Valid values are: ACTIVE, endpoints that were active within the specified duration are included in the segment; and, INACTIVE, endpoints that weren't active within the specified duration are included in the segment.

                          Possible values include:
                          • "ACTIVE"
                          • "INACTIVE"
                    • Demographic — (map)

                      The demographic-based criteria, such as device platform, for the segment.

                      • AppVersion — (map)

                        The app version criteria for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • Channel — (map)

                        The channel criteria for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • DeviceType — (map)

                        The device type criteria for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • Make — (map)

                        The device make criteria for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • Model — (map)

                        The device model criteria for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • Platform — (map)

                        The device platform criteria for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                    • Location — (map)

                      The location-based criteria, such as region or GPS coordinates, for the segment.

                      • Country — (map)

                        The country or region code, in ISO 3166-1 alpha-2 format, for the segment.

                        • DimensionType — (String)

                          The type of segment dimension to use. Valid values are: INCLUSIVE, endpoints that match the criteria are included in the segment; and, EXCLUSIVE, endpoints that match the criteria are excluded from the segment.

                          Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the DimensionType property, endpoints are included or excluded from the segment if their values match the criteria values.

                      • GPSPoint — (map)

                        The GPS location and range for the segment.

                        • Coordinatesrequired — (map)

                          The GPS coordinates to measure distance from.

                          • Latituderequired — (Float)

                            The latitude coordinate of the location.

                          • Longituderequired — (Float)

                            The longitude coordinate of the location.

                        • RangeInKilometers — (Float)

                          The range, in kilometers, from the GPS coordinates.

                    • Metrics — (map<map>)

                      One or more custom metrics to use as criteria for the segment.

                      • ComparisonOperatorrequired — (String)

                        The operator to use when comparing metric values. Valid values are: GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, and EQUAL.

                      • Valuerequired — (Float)

                        The value to compare.

                    • UserAttributes — (map<map>)

                      One or more custom user attributes to use as criteria for the segment.

                      • AttributeType — (String)

                        The type of segment dimension to use. Valid values are:

                        • INCLUSIVE - endpoints that have attributes matching the values are included in the segment.
                        • EXCLUSIVE - endpoints that have attributes matching the values are excluded in the segment.
                        • CONTAINS - endpoints that have attributes' substrings match the values are included in the segment.
                        • BEFORE - endpoints with attributes read as ISO_INSTANT datetimes before the value are included in the segment.
                        • AFTER - endpoints with attributes read as ISO_INSTANT datetimes after the value are included in the segment.
                        • ON - endpoints with attributes read as ISO_INSTANT dates on the value are included in the segment. Time is ignored in this comparison.
                        • BETWEEN - endpoints with attributes read as ISO_INSTANT datetimes between the values are included in the segment.
                        • Possible values include:
                          • "INCLUSIVE"
                          • "EXCLUSIVE"
                          • "CONTAINS"
                          • "BEFORE"
                          • "AFTER"
                          • "ON"
                          • "BETWEEN"
                        • Valuesrequired — (Array<String>)

                          The criteria values to use for the segment dimension. Depending on the value of the AttributeType property, endpoints are included or excluded from the segment if their attribute values match the criteria values.

                    • SourceSegments — (Array<map>)

                      The base segment to build the segment on. A base segment, also referred to as a source segment, defines the initial population of endpoints for a segment. When you add dimensions to a segment, Amazon Pinpoint filters the base segment by using the dimensions that you specify.

                      You can specify more than one dimensional segment or only one imported segment. If you specify an imported segment, the Amazon Pinpoint console displays a segment size estimate that indicates the size of the imported segment without any filters applied to it.

                      • Idrequired — (String)

                        The unique identifier for the segment.

                      • Version — (Integer)

                        The version number of the segment.

                    • SourceType — (String)

                      Specifies how to handle multiple base segments for the segment. For example, if you specify three base segments for the segment, whether the resulting segment is based on all, any, or none of the base segments.

                      Possible values include:
                      • "ALL"
                      • "ANY"
                      • "NONE"
                    • Type — (String)

                      Specifies how to handle multiple dimensions for the segment. For example, if you specify three dimensions for the segment, whether the resulting segment includes endpoints that match all, any, or none of the dimensions.

                      Possible values include:
                      • "ALL"
                      • "ANY"
                      • "NONE"
                  • Include — (String)

                    Specifies how to handle multiple segment groups for the segment. For example, if the segment includes three segment groups, whether the resulting segment includes endpoints that match all, any, or none of the segment groups.

                    Possible values include:
                    • "ALL"
                    • "ANY"
                    • "NONE"
                • SegmentTyperequired — (String)

                  The segment type. Valid values are:

                  • DIMENSIONAL - A dynamic segment, which is a segment that uses selection criteria that you specify and is based on endpoint data that's reported by your app. Dynamic segments can change over time.

                  • IMPORT - A static segment, which is a segment that uses selection criteria that you specify and is based on endpoint definitions that you import from a file. Imported segments are static; they don't change over time.

                  Possible values include:
                  • "DIMENSIONAL"
                  • "IMPORT"
                • tags — (map<String>)

                  A string-to-string map of key-value pairs that identifies the tags that are associated with the segment. Each tag consists of a required tag key and an associated tag value.

                • Version — (Integer)

                  The version number of the segment.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

updateSmsChannel(params = {}, callback) ⇒ AWS.Request

Enables the SMS channel for an application or updates the status and settings of the SMS channel for an application.

Service Reference:

Examples:

Calling the updateSmsChannel operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  SMSChannelRequest: { /* required */
    Enabled: true || false,
    SenderId: 'STRING_VALUE',
    ShortCode: 'STRING_VALUE'
  }
};
pinpoint.updateSmsChannel(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • SMSChannelRequest — (map)

      Specifies the status and settings of the SMS channel for an application.

      • Enabled — (Boolean)

        Specifies whether to enable the SMS channel for the application.

      • SenderId — (String)

        The identity that you want to display on recipients' devices when they receive messages from the SMS channel.

      • ShortCode — (String)

        The registered short code that you want to use when you send messages through the SMS channel.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • SMSChannelResponse — (map)

        Provides information about the status and settings of the SMS channel for an application.

        • ApplicationId — (String)

          The unique identifier for the application that the SMS channel applies to.

        • CreationDate — (String)

          The date and time, in ISO 8601 format, when the SMS channel was enabled.

        • Enabled — (Boolean)

          Specifies whether the SMS channel is enabled for the application.

        • HasCredential — (Boolean)

          (Not used) This property is retained only for backward compatibility.

        • Id — (String)

          (Deprecated) An identifier for the SMS channel. This property is retained only for backward compatibility.

        • IsArchived — (Boolean)

          Specifies whether the SMS channel is archived.

        • LastModifiedBy — (String)

          The user who last modified the SMS channel.

        • LastModifiedDate — (String)

          The date and time, in ISO 8601 format, when the SMS channel was last modified.

        • Platformrequired — (String)

          The type of messaging or notification platform for the channel. For the SMS channel, this value is SMS.

        • PromotionalMessagesPerSecond — (Integer)

          The maximum number of promotional messages that you can send through the SMS channel each second.

        • SenderId — (String)

          The identity that displays on recipients' devices when they receive messages from the SMS channel.

        • ShortCode — (String)

          The registered short code to use when you send messages through the SMS channel.

        • TransactionalMessagesPerSecond — (Integer)

          The maximum number of transactional messages that you can send through the SMS channel each second.

        • Version — (Integer)

          The current version of the SMS channel.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

updateSmsTemplate(params = {}, callback) ⇒ AWS.Request

Updates an existing message template for messages that are sent through the SMS channel.

Service Reference:

Examples:

Calling the updateSmsTemplate operation

var params = {
  SMSTemplateRequest: { /* required */
    Body: 'STRING_VALUE',
    DefaultSubstitutions: 'STRING_VALUE',
    RecommenderId: 'STRING_VALUE',
    TemplateDescription: 'STRING_VALUE',
    tags: {
      '<__string>': 'STRING_VALUE',
      /* '<__string>': ... */
    }
  },
  TemplateName: 'STRING_VALUE', /* required */
  CreateNewVersion: true || false,
  Version: 'STRING_VALUE'
};
pinpoint.updateSmsTemplate(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • CreateNewVersion — (Boolean)

      Specifies whether to save the updates as a new version of the message template. Valid values are: true, save the updates as a new version; and, false, save the updates to (overwrite) the latest existing version of the template.

      If you don't specify a value for this parameter, Amazon Pinpoint saves the updates to (overwrites) the latest existing version of the template. If you specify a value of true for this parameter, don't specify a value for the version parameter. Otherwise, an error will occur.

    • SMSTemplateRequest — (map)

      Specifies the content and settings for a message template that can be used in text messages that are sent through the SMS channel.

      • Body — (String)

        The message body to use in text messages that are based on the message template.

      • DefaultSubstitutions — (String)

        A JSON object that specifies the default values to use for message variables in the message template. This object is a set of key-value pairs. Each key defines a message variable in the template. The corresponding value defines the default value for that variable. When you create a message that's based on the template, you can override these defaults with message-specific and address-specific variables and values.

      • RecommenderId — (String)

        The unique identifier for the recommender model to use for the message template. Amazon Pinpoint uses this value to determine how to retrieve and process data from a recommender model when it sends messages that use the template, if the template contains message variables for recommendation data.

      • tags — (map<String>)
        Note: As of 22-05-2023 tags has been deprecated for update operations. After this date any value in tags is not processed and an error code is not returned. To manage tags we recommend using either Tags in the API Reference for Amazon Pinpoint, resourcegroupstaggingapi commands in the AWS Command Line Interface Documentation or resourcegroupstaggingapi in the AWS SDK.

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

      • TemplateDescription — (String)

        A custom description of the message template.

    • TemplateName — (String)

      The name of the message template. A template name must start with an alphanumeric character and can contain a maximum of 128 characters. The characters can be alphanumeric characters, underscores (_), or hyphens (-). Template names are case sensitive.

    • Version — (String)

      The unique identifier for the version of the message template to update, retrieve information about, or delete. To retrieve identifiers and other information for all the versions of a template, use the Template Versions resource.

      If specified, this value must match the identifier for an existing template version. If specified for an update operation, this value must match the identifier for the latest existing version of the template. This restriction helps ensure that race conditions don't occur.

      If you don't specify a value for this parameter, Amazon Pinpoint does the following:

      • For a get operation, retrieves information about the active version of the template.

      • For an update operation, saves the updates to (overwrites) the latest existing version of the template, if the create-new-version parameter isn't used or is set to false.

      • For a delete operation, deletes the template, including all versions of the template.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • MessageBody — (map)

        Provides information about an API request or response.

        • Message — (String)

          The message that's returned from the API.

        • RequestID — (String)

          The unique identifier for the request or response.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

updateTemplateActiveVersion(params = {}, callback) ⇒ AWS.Request

Changes the status of a specific version of a message template to active.

Service Reference:

Examples:

Calling the updateTemplateActiveVersion operation

var params = {
  TemplateActiveVersionRequest: { /* required */
    Version: 'STRING_VALUE'
  },
  TemplateName: 'STRING_VALUE', /* required */
  TemplateType: 'STRING_VALUE' /* required */
};
pinpoint.updateTemplateActiveVersion(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • TemplateActiveVersionRequest — (map)

      Specifies which version of a message template to use as the active version of the template.

      • Version — (String)

        The version of the message template to use as the active version of the template. Valid values are: latest, for the most recent version of the template; or, the unique identifier for any existing version of the template. If you specify an identifier, the value must match the identifier for an existing template version. To retrieve a list of versions and version identifiers for a template, use the Template Versions resource.

    • TemplateName — (String)

      The name of the message template. A template name must start with an alphanumeric character and can contain a maximum of 128 characters. The characters can be alphanumeric characters, underscores (_), or hyphens (-). Template names are case sensitive.

    • TemplateType — (String)

      The type of channel that the message template is designed for. Valid values are: EMAIL, PUSH, SMS, and VOICE.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • MessageBody — (map)

        Provides information about an API request or response.

        • Message — (String)

          The message that's returned from the API.

        • RequestID — (String)

          The unique identifier for the request or response.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

updateVoiceChannel(params = {}, callback) ⇒ AWS.Request

Enables the voice channel for an application or updates the status and settings of the voice channel for an application.

Service Reference:

Examples:

Calling the updateVoiceChannel operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  VoiceChannelRequest: { /* required */
    Enabled: true || false
  }
};
pinpoint.updateVoiceChannel(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console.

    • VoiceChannelRequest — (map)

      Specifies the status and settings of the voice channel for an application.

      • Enabled — (Boolean)

        Specifies whether to enable the voice channel for the application.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • VoiceChannelResponse — (map)

        Provides information about the status and settings of the voice channel for an application.

        • ApplicationId — (String)

          The unique identifier for the application that the voice channel applies to.

        • CreationDate — (String)

          The date and time, in ISO 8601 format, when the voice channel was enabled.

        • Enabled — (Boolean)

          Specifies whether the voice channel is enabled for the application.

        • HasCredential — (Boolean)

          (Not used) This property is retained only for backward compatibility.

        • Id — (String)

          (Deprecated) An identifier for the voice channel. This property is retained only for backward compatibility.

        • IsArchived — (Boolean)

          Specifies whether the voice channel is archived.

        • LastModifiedBy — (String)

          The user who last modified the voice channel.

        • LastModifiedDate — (String)

          The date and time, in ISO 8601 format, when the voice channel was last modified.

        • Platformrequired — (String)

          The type of messaging or notification platform for the channel. For the voice channel, this value is VOICE.

        • Version — (Integer)

          The current version of the voice channel.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

updateVoiceTemplate(params = {}, callback) ⇒ AWS.Request

Updates an existing message template for messages that are sent through the voice channel.

Service Reference:

Examples:

Calling the updateVoiceTemplate operation

var params = {
  TemplateName: 'STRING_VALUE', /* required */
  VoiceTemplateRequest: { /* required */
    Body: 'STRING_VALUE',
    DefaultSubstitutions: 'STRING_VALUE',
    LanguageCode: 'STRING_VALUE',
    TemplateDescription: 'STRING_VALUE',
    VoiceId: 'STRING_VALUE',
    tags: {
      '<__string>': 'STRING_VALUE',
      /* '<__string>': ... */
    }
  },
  CreateNewVersion: true || false,
  Version: 'STRING_VALUE'
};
pinpoint.updateVoiceTemplate(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • CreateNewVersion — (Boolean)

      Specifies whether to save the updates as a new version of the message template. Valid values are: true, save the updates as a new version; and, false, save the updates to (overwrite) the latest existing version of the template.

      If you don't specify a value for this parameter, Amazon Pinpoint saves the updates to (overwrites) the latest existing version of the template. If you specify a value of true for this parameter, don't specify a value for the version parameter. Otherwise, an error will occur.

    • TemplateName — (String)

      The name of the message template. A template name must start with an alphanumeric character and can contain a maximum of 128 characters. The characters can be alphanumeric characters, underscores (_), or hyphens (-). Template names are case sensitive.

    • Version — (String)

      The unique identifier for the version of the message template to update, retrieve information about, or delete. To retrieve identifiers and other information for all the versions of a template, use the Template Versions resource.

      If specified, this value must match the identifier for an existing template version. If specified for an update operation, this value must match the identifier for the latest existing version of the template. This restriction helps ensure that race conditions don't occur.

      If you don't specify a value for this parameter, Amazon Pinpoint does the following:

      • For a get operation, retrieves information about the active version of the template.

      • For an update operation, saves the updates to (overwrites) the latest existing version of the template, if the create-new-version parameter isn't used or is set to false.

      • For a delete operation, deletes the template, including all versions of the template.

    • VoiceTemplateRequest — (map)

      Specifies the content and settings for a message template that can be used in messages that are sent through the voice channel.

      • Body — (String)

        The text of the script to use in messages that are based on the message template, in plain text format.

      • DefaultSubstitutions — (String)

        A JSON object that specifies the default values to use for message variables in the message template. This object is a set of key-value pairs. Each key defines a message variable in the template. The corresponding value defines the default value for that variable. When you create a message that's based on the template, you can override these defaults with message-specific and address-specific variables and values.

      • LanguageCode — (String)

        The code for the language to use when synthesizing the text of the script in messages that are based on the message template. For a list of supported languages and the code for each one, see the Amazon Polly Developer Guide.

      • tags — (map<String>)
        Note: As of 22-05-2023 tags has been deprecated for update operations. After this date any value in tags is not processed and an error code is not returned. To manage tags we recommend using either Tags in the API Reference for Amazon Pinpoint, resourcegroupstaggingapi commands in the AWS Command Line Interface Documentation or resourcegroupstaggingapi in the AWS SDK.

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

      • TemplateDescription — (String)

        A custom description of the message template.

      • VoiceId — (String)

        The name of the voice to use when delivering messages that are based on the message template. For a list of supported voices, see the Amazon Polly Developer Guide.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • MessageBody — (map)

        Provides information about an API request or response.

        • Message — (String)

          The message that's returned from the API.

        • RequestID — (String)

          The unique identifier for the request or response.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.

verifyOTPMessage(params = {}, callback) ⇒ AWS.Request

Verify an OTP

Service Reference:

Examples:

Calling the verifyOTPMessage operation

var params = {
  ApplicationId: 'STRING_VALUE', /* required */
  VerifyOTPMessageRequestParameters: { /* required */
    DestinationIdentity: 'STRING_VALUE', /* required */
    Otp: 'STRING_VALUE', /* required */
    ReferenceId: 'STRING_VALUE' /* required */
  }
};
pinpoint.verifyOTPMessage(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

Parameters:

  • params (Object) (defaults to: {})
    • ApplicationId — (String)

      The unique ID of your Amazon Pinpoint application.

    • VerifyOTPMessageRequestParameters — (map)

      Verify OTP message request.

      • DestinationIdentityrequired — (String)

        The destination identity to send OTP to.

      • Otprequired — (String)

        The OTP the end user provided for verification.

      • ReferenceIdrequired — (String)

        The reference identifier provided when the OTP was previously sent.

Callback (callback):

  • function(err, data) { ... }

    Called when a response from the service is returned. If a callback is not supplied, you must call AWS.Request.send() on the returned request object to initiate the request.

    Context (this):

    • (AWS.Response)

      the response object containing error, data properties, and the original request object.

    Parameters:

    • err (Error)

      the error object returned from the request. Set to null if the request is successful.

    • data (Object)

      the de-serialized data returned from the request. Set to null if a request error occurs. The data object has the following properties:

      • VerificationResponse — (map)

        Verify OTP Message Response.

        • Valid — (Boolean)

          Specifies whether the OTP is valid or not.

Returns:

  • (AWS.Request)

    a handle to the operation request for subsequent event callback registration.