We're excited to introduce two new app subscription webhooks:

  • The app_subscription_renewal_attempt_failure webhook will be sent to developers when a subscription renewal attempt fails. The attempt will occur once before the entire renewal operation fails and you receive the app_subscription_renewal_failure webhook.
  • The app_subscription_renewal_failure webhook will be sent to developers when a subscription renewal attempt fails. The failure occurs after one renewal attempt.

You can read more about our available webhooks here!

We're excited to announce that you can now host your applications on monday's servers using monday code!

Releasing this to beta is the first step in making the monday.com development process as easy and self-contained as possible. As an added bonus, marketplace apps hosted on monday code will also be eligible for an advanced security badge in the future.

To use this feature, you'll need to:

You can check out the full guide here!

Marketplace developers - this one is for you!

Starting tomorrow, the minimum threshold for app ratings to appear in the marketplace will increase from 3 to 5! This means that the average rating will not be visible to marketplace users for any apps with less than 5 ratings.

If your app has fewer than 5 ratings, users will still see your app card but it won't have the average score on it. If your app has more than 5 ratings, users will see a star and the average score of all ratings listed on the app card.

Check out our documentation for ways to help increase the number of ratings your app has received!

I’m here to deliver some good news regarding seamless authentication via the SDK…

The shortLivedToken is now valid for 5 minutes instead of 1!

This change will give your app an additional four minutes to make authenticated calls to the API as part of your integration recipe. You can read more about seamless authentication for integrations in our documentation.

Happy authenticating!

Marketplace app developers - this one is for you!

When accessing your app in the Developer Center, you may notice an updated menu on the left-hand side that includes the brand-new Marketplace section. Here you'll find tabs that are only relevant for marketplace apps to help make the menu more organized and the necessary tabs easier to access.

Check out our documentation to read more about the sections and what each tab contains!

We just added the batch_extend_trial_period mutation, which enables apps monetized by monday to provide trial extensions via the API!

The available arguments ask for the same information required when extending a trial through the Developer Center. However, the most significant difference between the API and the Developer Center is that you can batch up to five trial extensions in one call via the API.

The available fields then return information about the batch itself, as well as individual operations. Check out the sample mutation below, and then give it a go!

mutation {
  batch_extend_trial_period (account_slugs: ["test", "monday"], app_id: 12345678, plan_id: "Plan_1", duration_in_days: 21) {
    details {
      account_slug
      reason
      success
    }
    reason
    success
  }
}

Please note that you must make multiple calls if the plan ID and durations vary for different accounts.

We recently made changes to the process of granting discounts and extending trials for apps that are monetized through monday:

Instead of granting discounts and extending trials using the account ID, you must now use the account slug. You can obtain the account slug from your webhooks or by querying the account through the API.

This change is extremely important because it enables you to grant discounts and extend trials for customers across different regions! Previously, the system would not allow you to grant a discount or extend a trial for a customer who sits in a different region than you. With this update, it doesn't matter what region you or your customers are in.

We've recently made a few updates and improvements to our webhooks to help provide you with a better developer experience. Let's check them out!

  1. New app_webhooks_only argument

This new argument returns just the webhooks created by the app initiating the request when querying the webhooks object through the API.

query {
  webhooks (app_webhooks_only:true, board_id:1234567890) {
    id
    event
    config
  }
}
  1. Added missing authorization headers

Before these updates, we were missing a feature that sent the authorization header for some webhooks. We added the missing feature, so now the authorization header will be included in all webhooks. Make sure to start validating your requests from monday!

Please note that this only applies to apps created in the Developer Center. You will not receive the authorization header if your API call was made with a personal token.

  1. Users can't remove app webhooks in the UI

While webhooks created by apps were always labeled internally on monday as belonging to a specific app, we enabled this labeling in the Active integrations page on the board so users can’t remove your webhooks from the board!

We're excited to announce the release of the first phase of our app analytics :rocket:

App analytics was one of the most frequently requested features, and we understand how important that data is to improving your app's performance.

Now, you can access comprehensive and detailed information about your app to provide clear insight that allows you to make data-driven decisions. App analytics gives you data related to your app's installs, reviews, and listings in the marketplace.

You can read more about app analytics and the data you can access in our documentation!

We recently changed the unsubscribe behavior of the custom triggers for the Integration/Workflow app feature.

Previously, the trigger's unsubscribe endpoint was only called when the integration or board was deleted. However, we've updated it to also unsubscribe for three days (subject to change in the future) after the automation was disabled.

This change streamlines resources and unsubscribes stale automations that have been out of use for over three days. Before this change, such automations could remain disabled and subscribed to indefinitely, wasting resources on both ends.

This change will help both the monday app infrastructure and app developers' infrastructure save resources and only trigger truly active automations moving forward.