Pinpoint / Client / update_application_settings

update_application_settings#

Pinpoint.Client.update_application_settings(**kwargs)#

Updates the settings for an application.

See also: AWS API Documentation

Request Syntax

response = client.update_application_settings(
    ApplicationId='string',
    WriteApplicationSettingsRequest={
        'CampaignHook': {
            'LambdaFunctionName': 'string',
            'Mode': 'DELIVERY'|'FILTER',
            'WebUrl': 'string'
        },
        'CloudWatchMetricsEnabled': True|False,
        'EventTaggingEnabled': True|False,
        'Limits': {
            'Daily': 123,
            'MaximumDuration': 123,
            'MessagesPerSecond': 123,
            'Total': 123,
            'Session': 123
        },
        'QuietTime': {
            'End': 'string',
            'Start': 'string'
        },
        'JourneyLimits': {
            'DailyCap': 123,
            'TimeframeCap': {
                'Cap': 123,
                'Days': 123
            },
            'TotalCap': 123
        }
    }
)
Parameters:
  • ApplicationId (string) –

    [REQUIRED]

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

  • WriteApplicationSettingsRequest (dict) –

    [REQUIRED]

    Specifies the default settings for an application.

    • CampaignHook (dict) –

      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.

      • 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 (dict) –

      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 (dict) –

      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 (dict) –

      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 (dict) –

        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.

Return type:

dict

Returns:

Response Syntax

{
    'ApplicationSettingsResource': {
        'ApplicationId': 'string',
        'CampaignHook': {
            'LambdaFunctionName': 'string',
            'Mode': 'DELIVERY'|'FILTER',
            'WebUrl': 'string'
        },
        'LastModifiedDate': 'string',
        'Limits': {
            'Daily': 123,
            'MaximumDuration': 123,
            'MessagesPerSecond': 123,
            'Total': 123,
            'Session': 123
        },
        'QuietTime': {
            'End': 'string',
            'Start': 'string'
        },
        'JourneyLimits': {
            'DailyCap': 123,
            'TimeframeCap': {
                'Cap': 123,
                'Days': 123
            },
            'TotalCap': 123
        }
    }
}

Response Structure

  • (dict) –

    The request succeeded.

    • ApplicationSettingsResource (dict) –

      Provides information about an application, including the default settings for an application.

      • ApplicationId (string) –

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

      • CampaignHook (dict) –

        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.

        • 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 (dict) –

        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 (dict) –

        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 (dict) –

        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 (dict) –

          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.

Exceptions

  • Pinpoint.Client.exceptions.BadRequestException

  • Pinpoint.Client.exceptions.InternalServerErrorException

  • Pinpoint.Client.exceptions.PayloadTooLargeException

  • Pinpoint.Client.exceptions.ForbiddenException

  • Pinpoint.Client.exceptions.NotFoundException

  • Pinpoint.Client.exceptions.MethodNotAllowedException

  • Pinpoint.Client.exceptions.TooManyRequestsException