No image in the email from alert rule that created by Alerting provisioning API

As mentioned in the topic
Grafana version: 9.0.6
But when I create same rule through UI, it can be work.

So I checked the database of grafana

The top row is created through the UI, and the bottom row is created through the API.

I’m sure I added Dashboard UID and Panel Id when I created them.

Can you please tell me why UI and API behave differently?

looks like there’s been a little more development on alerting screenshots since 9.0.6. Have you tried upgrading?

313:<!-- 9.1.3 END -->
332:- **Alerting:** Fix saving of screenshots uploaded with a signed url. [#53933](https://github.com/grafana/grafana/pull/53933), [@VDVsx](https://github.com/VDVsx)
344:<!-- 9.1.2 END -->
372:<!-- 9.1.1 END -->
431:<!-- 9.1.0 END -->
455:- **Alerting:** Change **alertScreenshotToken** to **alertImageToken**. [#50771](https://github.com/grafana/grafana/pull/50771), [@grobinson-grafana](https://github.com/grobinson-grafana)
655:<!-- 9.0.9 END -->

and can you verify that you are using the newest alert provisioning APIs?

Here are the newest stable API endpoints for provisioning Grafana alerts: