🎉 Announcing General Availability of Content Publisher Intent!

We’re excited to share that the Content Publisher Intent is now generally available across the Canva developer platform. This marks a major milestone in how developers can build rich publish experiences directly within Canva.

With the beta launch, we introduced the ability to experiment with the intent to publish content, provide previews, and configure platform-specific publish settings natively in the Share menu and other surfaces. With GA, you now have a stable, supported way to bring seamless publishing workflows to your apps, backed by production-ready tooling.

:sparkles: What GA Means for You

  • The intent is now stable and ready for public app release in the Canva Apps SDK (no longer limited to beta usage). As per our deprecation policy we commit to maintaining this version of the API for the next 6 months as we continue to add improvements. Feedback remains welcome!
  • Users can publish designs directly from Canva to your platform with accurate previews and platform-specific options like captions and tags.
  • You’ll benefit from integrated discoverability where users are ready to share - from the Editor’s Share menu and other surfaces as support is added.

:light_bulb: Next Steps

If you haven’t yet explored the intent, explore our key resources to begin your journey:

If you started development during the beta, now is a great time to finalise your integration, submit your app for review, and launch a publish experience to your users!

Thank you to everyone who provided feedback during the beta period. We’re thrilled to see what you build next!

The Canva Team :light_blue_heart:

2 Likes

Hi, I got an email reminder titled - ‘Final reminder - Update your Publish Extension‘. However, I don’t think I have any Publish Extension currently live on Canva. How can I check?

I only have a Content Extension that is live on Canva app store. Thanks!

hi @coral - apologies, content extensions developers accidentally got included in those communications. This deprecation only applies to Publish extensions. You can find your extensions in your developer portal. Publish extensions are anything that use at least one of the /publish/xxx endpoints in the old extensions documentation.

@Ofir_Zeevi @meredith

Hi, we submitted a new version of our app (APPS-38166) last week and it includes the Publish Intent. It was all verified and working as of the submission date.

Now we find we are getting error “Error: Single page selection must exist“.

Question: Did anything in the SDK change?

Anyway know how to fix this and have made the change, but we will need to cancel our “in review” APPS-38166 submission and probably be sent to the back of the queue. We are trying to get this update approved before our publish extension is removed.

Thanks

Tom

Hi @Tom ,
Publish Extension migration submissions are getting priority in the review queue as we know the deadline is approaching. You will not be sent to the back of the queue if you resubmit.

There weren’t any releases for the content publisher intent over the last week or so. Do you mind sharing what you had to change so we can investigate?

Thanks!

Thanks @meredith here is the story

We submitted the app with 2 mediaSlots, one using an ExactValueRange, { fileCount: { exact: 1 } }, and the other using a MaxValueRange, { fileCount: { max: 1 } } because we wanted the second mediaSlot to be optional. This was all working fine during dev/testing and production submission version, at the time of submission. Some time after, we started getting an error in the console that said “Error: Single page selection must exist”. This error seemed to be thrown from the second mediaSlot using the MaxValueRange as it now supposedly expects at least one image to be added, as the app worked fine again when tested with commenting out that mediaSlot or switching it to a MinMaxValueRange.