Skip to main content
POST
/
notification-settings
Create a notification setting
const options = {
  method: 'POST',
  headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
  body: JSON.stringify({
    description: 'Slack notifications',
    type: 'url',
    destination: 'https://hooks.slack.com/example',
    api_version: 1,
    traffic_source: 'all',
    subscribed_events: [
      'transaction.billed',
      'transaction.canceled',
      'transaction.completed',
      'transaction.created',
      'transaction.payment_failed',
      'transaction.ready',
      'transaction.updated',
      'subscription.activated',
      'subscription.created',
      'subscription.past_due',
      'subscription.paused',
      'subscription.resumed',
      'subscription.trialing',
      'subscription.updated'
    ]
  })
};

fetch('https://api.paddle.com/notification-settings', options)
  .then(res => res.json())
  .then(res => console.log(res))
  .catch(err => console.error(err));
{
  "data": {
    "id": "ntfset_01gkpjp8bkm3tm53kdgkx6sms7",
    "description": "Slack notifications",
    "type": "url",
    "destination": "https://hooks.slack.com/example",
    "active": true,
    "api_version": 1,
    "include_sensitive_fields": false,
    "traffic_source": "all",
    "subscribed_events": [
      {
        "name": "transaction.billed",
        "description": "Occurs when a transaction is billed.",
        "group": "Transaction",
        "available_versions": [
          1
        ]
      },
      {
        "name": "transaction.canceled",
        "description": "Occurs when a transaction is canceled.",
        "group": "Transaction",
        "available_versions": [
          1
        ]
      },
      {
        "name": "transaction.completed",
        "description": "Occurs when a transaction is completed.",
        "group": "Transaction",
        "available_versions": [
          1
        ]
      },
      {
        "name": "transaction.created",
        "description": "Occurs when a transaction is created.",
        "group": "Transaction",
        "available_versions": [
          1
        ]
      },
      {
        "name": "transaction.payment_failed",
        "description": "Occurs when a payment fails for a transaction.",
        "group": "Transaction",
        "available_versions": [
          1
        ]
      },
      {
        "name": "transaction.ready",
        "description": "Occurs when a transaction is ready.",
        "group": "Transaction",
        "available_versions": [
          1
        ]
      },
      {
        "name": "transaction.updated",
        "description": "Occurs when a transaction is updated.",
        "group": "Transaction",
        "available_versions": [
          1
        ]
      },
      {
        "name": "subscription.activated",
        "description": "Occurs when a subscription is activated.",
        "group": "Subscription",
        "available_versions": [
          1
        ]
      },
      {
        "name": "subscription.canceled",
        "description": "Occurs when a subscription is canceled.",
        "group": "Subscription",
        "available_versions": [
          1
        ]
      },
      {
        "name": "subscription.created",
        "description": "Occurs when a subscription is created.",
        "group": "Subscription",
        "available_versions": [
          1
        ]
      },
      {
        "name": "subscription.past_due",
        "description": "Occurs when a subscription is past due.",
        "group": "Subscription",
        "available_versions": [
          1
        ]
      },
      {
        "name": "subscription.paused",
        "description": "Occurs when a subscription is paused.",
        "group": "Subscription",
        "available_versions": [
          1
        ]
      },
      {
        "name": "subscription.resumed",
        "description": "Occurs when a subscription is resumed.",
        "group": "Subscription",
        "available_versions": [
          1
        ]
      },
      {
        "name": "subscription.trialing",
        "description": "Occurs when a subscription is trialing.",
        "group": "Subscription",
        "available_versions": [
          1
        ]
      },
      {
        "name": "subscription.updated",
        "description": "Occurs when a subscription is updated.",
        "group": "Subscription",
        "available_versions": [
          1
        ]
      }
    ],
    "endpoint_secret_key": "pdl_ntfset_01gkpjp8bkm3tm53kdgkx6sms7_6h3qd3uFSi9YCD3OLYAShQI90XTI5vEI"
  },
  "meta": {
    "request_id": "fd55d51a-6242-4645-8572-af2a8b6f41b6"
  }
}

Authorizations

Authorization
string
header
required

Requests are authenticated with API keys. Provide your API key as a Bearer token in the Authorization header.

API keys are assigned permissions, granting them access to entities and operations. Each endpoint may require one or more permissions, defined with the x-permissions extension. Values for include parameters may require specific permissions as defined in the x-enum-permissions extension. See all available permissions in the permission schema or documentation.

Get an API key and select the permissions you need from the Paddle dashboard under Paddle > Developer Tools > Authentication.

Body

application/json

Represents a notification destination when creating notification destinations.

description
string
required

Short description for this notification destination. Shown in the Paddle Dashboard.

Required string length: 1 - 500
type
enum<string>
required

Where notifications should be sent for this destination.

Available options:
email,
url
destination
string
required

Webhook endpoint URL or email address.

Required string length: 1 - 2048
subscribed_events
enum<string>[]
required

Subscribed events for this notification destination. When creating or updating a notification destination, pass an array of event type names only. Paddle returns the complete event type object.

Type of event sent by Paddle, in the format entity.event_type.

Available options:
address.created,
address.imported,
address.updated,
adjustment.created,
adjustment.updated,
api_key.created,
api_key.expired,
api_key.expiring,
api_key.revoked,
api_key.updated,
business.created,
business.imported,
business.updated,
customer.created,
customer.imported,
customer.updated,
discount.created,
discount.imported,
discount.updated,
payment_method.saved,
payment_method.deleted,
payout.created,
payout.paid,
price.created,
price.imported,
price.updated,
product.created,
product.imported,
product.updated,
report.created,
report.updated,
subscription.activated,
subscription.canceled,
subscription.created,
subscription.imported,
subscription.past_due,
subscription.paused,
subscription.resumed,
subscription.trialing,
subscription.updated,
transaction.billed,
transaction.canceled,
transaction.completed,
transaction.created,
transaction.paid,
transaction.past_due,
transaction.payment_failed,
transaction.ready,
transaction.revised,
transaction.updated
api_version
integer

API version that returned objects for events should conform to. Must be a valid version of the Paddle API. Can't be a version older than your account default. If omitted, defaults to your account default version.

Required range: x >= 1
include_sensitive_fields
boolean
default:false

Whether potentially sensitive fields should be sent to this notification destination. If omitted, defaults to false.

traffic_source
enum<string>
default:platform

Whether Paddle should deliver real platform events, simulation events or both to this notification destination. If omitted, defaults to platform.

Available options:
platform,
simulation,
all

Response

Created

data
NotificationSetting · object
required

Represents a notification destination.

meta
Meta · object
required

Information about this response.