Staging Product webhook payload
The resource:url for a Staging Product webhook payload uses this basic format:
https://
marketplace_url/api/marketplace/v1/products/
id?country=¤cy=
Here marketplace_url is the main URL for the marketplace (for example,
mycompany.byappdirect.com
), and id is an ID number that the
marketplace has generated for this specific product (for example,
665549
).
Note that this resource:url is an exception to the usual behavior, in that it does not return the same payload as the webhook itself. Instead, when you use this URL with an HTTP GET it returns the REST API Product definition for the product.
The Staging Product:Changed webhook is triggered by the following actions:
-
Changes to the Listing Info or Profile sections of the product definition are saved.
-
The product is published to the Production catalog.
This action also triggers a Catalog Product:Added event. -
The product is modified and re-published to the Production catalog.
This action also triggers a Catalog Product:Changed event. -
The product is unpublished from the Production catalog.
This action also triggers a Catalog Product:Removed event.
A Staging Product:Changed webhook is not triggered when you save a new edition and pricing plan, or a new integration configuration.
When a Staging Product :Added or Staging Product :Changed webhook is
triggered, the main part of the content
section of the payload matches
the REST API Product definition
for the product.
In addition, it includes the following attributes:
Attribute | Type | Description |
---|---|---|
assignLeadsToDevelopers | Boolean | Whether leads for the product are assigned to the vendor company. |
importable | Boolean | Whether the product definition can be imported into the marketplace. |
productRefId | String | A universally unique identifier (uuid) for the product. |
supportedLanguages | Object | A list of languages and locales that the product supports, indicated in the standard ISO 639-1 language code + ISO 3166-1 country code format. For example: 'en_US', 'fr_CA', and so on. |
supportsMultipleEditions | Boolean | Whether the product is stackable: that is, whether a buyer can purchase multiple subscriptions of it a the same time. |
useCheckoutV2 | Boolean | Whether the product uses cart-based checkout (Checkout V2) rather than individual product checkout. |
The pricing:edition section of the payload includes the following additional attributes that do not appear in the REST API Edition definition:
Attribute | Type | Description |
---|---|---|
productEditionRefId | String | A universally unique identifier for the edition. |
plan: | ||
{...} :keepBillDateOnPricing PlanChange | Boolean | Whether the billing cycle date remains the same when the user changes to a new pricing plan. |
{...} :cost:editionPricingItemUuid | String | A universally unique identifier (uuid) that identifies the pricing item. |
The integrationConfiguration section of the payload includes the following items that do not appear in the REST API IntegrationConfiguration definition:
Attribute | Type | Description |
---|---|---|
multipleSubscriptionsEnabled | Boolean | Whether the product is stackable: that is, whether a buyer can purchase multiple subscriptions of it a the same time. |
integrationEventConfigurationWS | Object | An object that defines the integration by specifying the endpoints to receive different integration events. See the IntegrationEventConfigurationWS table below. |
domainAssociationConfiguration | Object | An object that defines how domains are to be configured for this product. See the DomainAssociationConfiguration table below. |
The IntegrationEventConfigurationWS object includes the following attributes:
Attribute | Type | Description |
---|---|---|
createUrl | String | URL to which to send new SUBSCRIPTION_ORDER subscription creation events. |
createUrlInteractive | Boolean | Whether the createUrl endpoint is interactive: that is, whether the user is directed to an external site (for example, the vendor's web site) during checkout and provides user and subscription information there before being redirected back to the marketplace. |
upgradeUrl | String | URL to which to send SUBSCRIPTION_CHANGE events. |
upgradeUrlInteractive | Boolean | Whether the upgradeUrl endpoint is interactive: that is, whether the user is directed to an external site (for example, the vendor's web site) during subscription upgrades and modifies user and subscription information there before being redirected back to the marketplace. |
cancelUrl | String | URL to which to send SUBSCRIPTION_CANCEL events. |
cancelUrlInteractive | Boolean | Whether the cancelUrl endpoint is interactive: that is, whether the user is directed to the vendor's own web site to perform the cancellation there before being redirected back to the marketplace. |
notifyUrl | String | URL to which to send SUBSCRIPTION_NOTICE events. |
upcomingInvoiceEnabled | Boolean | Whether a SUBSCRIPTION_NOTICE event is sent to the notifyUrl endpoint before each invoice issued to the customer. If "false", the marketplace does not sent UPCOMING_INVOICE type SUBSCRIPTION_NOTICE events to the notifyUrl endpoint. |
eventStatusUrl | String | URL to which to send SUBSCRIPTION_STATUS events. |
addonNotificationUrl | String | URL to which to send add-on events, including:
|
assignUrl | String | URL to which to send USER_ASSIGNMENT events. |
unassignUrl | String | URL to which to send USER_UNASSIGNMENT events. |
vendorValidationsUrl | String | For a connector integration with vendor required fields, the URL used to validate vendor required fields. |
vendorRequiredFieldsUrl | String | For a connector integration with vendor required fields, the URL used to fetch the list of vendor required fields. |
The DomainAssociationConfiguration object includes the following attributes:
Attribute | Type | Description |
---|---|---|
settingsUrl | String | URL from which the marketplace requests domain settings for this product. |
verificationUrl | String | URL to which the marketplace sends verification requests to verify that the domain for this product has been set up correctly. |
maxDomainAssociation | Number | The maximum number of domains that can be associated with this product subscription purchase. |
linkUrl | String | URL notified when a user tries to link a domain to this product. |
unlinkUrl | String | URL notified when a user tries to remove a domain from this product. |
Was this page helpful?
Tell us more…
Help us improve our content. Responses are anonymous.
Thanks
We appreciate your feedback!