# Validation in custom block implementation

**URL:** <https://community.cumulocity.com/t/validation-in-custom-block-implementation/12510>\
**Category:** Forum\
**Tags:** analytics, Streaming-Analytics-Apama\
**Created:** [July 17, 2025, 7:57am UTC](https://community.cumulocity.com/t/validation-in-custom-block-implementation/12510 "2025-07-17T07:57:53Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![Harald\_Meyer](https://dub1.discourse-cdn.com/flex005/user_avatar/community.cumulocity.com/harald_meyer/32/1959_2.png) [@Harald\_Meyer](https://community.cumulocity.com/u/Harald_Meyer)\
**Post date:** [July 17, 2025, 7:57am UTC](https://community.cumulocity.com/t/validation-in-custom-block-implementation/12510/1 "2025-07-17T07:57:53Z")

</div>

Hi,

I have a custom block that reads some of its configuration from tenant options. So far, I have implemented this in the $init action:

```auto
    action $init() {
		monitor.subscribe(FindTenantOptionsResponse.SUBSCRIBE_CHANNEL);
		FindTenantOptions tenantOptionRequest := new FindTenantOptions;
		tenantOptionRequest.reqId := Util.generateReqId();
		tenantOptionRequest.category := "...";
		on FindTenantOptionsResponse(reqId = tenantOptionRequest.reqId) as tor {
			monitor.unsubscribe(FindTenantOptionsResponse.SUBSCRIBE_CHANNEL);

		}
		send tenantOptionRequest to FindTenantOptions.SEND_CHANNEL;
    }

```

But I would like to properly handle cases where these tenant options are not set. I could move the logic to $validate but the problem is that because I receive the tenant options in a listener, the $validate action will already have terminated successfully.

How should I do this best?

---

<div class="post-metadata">

**Author:** ![Mario\_Heidenreich2](https://dub1.discourse-cdn.com/flex005/user_avatar/community.cumulocity.com/mario_heidenreich2/32/30462_2.png) [@Mario\_Heidenreich2](https://community.cumulocity.com/u/Mario_Heidenreich2)\
**Post date:** [July 17, 2025, 8:19am UTC](https://community.cumulocity.com/t/validation-in-custom-block-implementation/12510/2 "2025-07-17T08:19:49Z")

</div>

Hey Harald, did you have a look at the async Validation:

> <https://github.com/Cumulocity-IoT/apama-analytics-builder-block-sdk/blob/main/doc/110-AsynchronousValidations.md>

---

<div class="post-metadata">

**Author:** ![Harald\_Meyer](https://dub1.discourse-cdn.com/flex005/user_avatar/community.cumulocity.com/harald_meyer/32/1959_2.png) [@Harald\_Meyer](https://community.cumulocity.com/u/Harald_Meyer)\
**Post date:** [July 17, 2025, 9:56am UTC](https://community.cumulocity.com/t/validation-in-custom-block-implementation/12510/3 "2025-07-17T09:56:56Z")

</div>

This is working. Thank you!
