Skip to main content

Webhooks

Webhooks are notifications that the AppDirect platform can send to specified URLs when certain events occur in the system. Marketplace Managers can use the user interface or API to configure webhooks for desired events. For example, you can receive notifications when users are created, when products are modified, when subscriptions are canceled, and so on. The AppDirect platform sends notifications by HTTP POST request, and the notifications themselves are in JSON format.

You can use webhooks to integrate AppDirect system events with external systems. For example, if you are using an external customer relationship management (CRM) system to track sales, you can use webhooks to receive notifications about product orders or subscriptions, and then send that information to the CRM in whatever way you want. Similarly, you could transmit relevant information to enterprise resource planning (ERP) systems, billing systems, back ends, and so on.

At a high level, the webhook integration process consists of the following:

  1. Set up your destination URL, which will receive the notifications.
  2. A Marketplace Manager creates webhooks. Essentially, they choose which system events generate notifications.
  3. Receive the notifications at the URL when events occur, and use the information in the notifications to integrate with your external systems as required.

The final step---sending the information to external systems---depends on the use case, the external system in question, and your own integration practices and system architecture; therefore, we cannot provide specific guidance.

AppDirect webhooks operate in one direction only: from the AppDirect platform to the endpoint. You can use webhooks to receive information from AppDirect, but cannot use them to send information to AppDirect.

note

Webhooks send notifications after an event occurs. For example, the REMOVED subscription webhook is sent only after a subscription is successfully canceled. Accordingly, for REMOVED or DELETED events, the deleted resource is not contained in the payload because we do not guarantee that the resource exists after the delete operation occurs.

Was this page helpful?