Automation Subscription: Sample

by Simon Sparks · 28 January 2026

You can use event topics as part of Event Broker subscriptions to define lifecycle extensibility.

To select the most appropriate event topic, it is important to evaluate if the event is triggered at the right step of the process and if it carries the payload necessary to perform the extensibility operation.

GitHub Repository: https://github.com/SimonSparksUK/Automation

Filename: Subscription-Sample.json

{
"id":"--INSERT-YOUR-GUID-HERE--",
"type":"RUNNABLE",
"eventTopicId":"--INSERT-YOUR-EVENT-TOPIC-ID-HERE--",
"name":"--INSERT-YOUR-EVENT-TOPIC-NAME-HERE--",
"ownerId":"admin",
"subscriberId":"service-account-vro-gateway-serviceaccount",
"blocking":false,
"description":"",
"criteria":"",
"constraints":{
"projectId":null
},
"timeout":0,
"broadcast":false,
"priority":10,
"disabled":false,
"system":false,
"contextual":false,
"runnableType":"extensibility.vro",
"runnableId":"--INSERT-YOUR-WORKFLOW-UNIQUE-ID-HERE--"
}

All Possible Event Topics for Automation v9.x

NameEvent Topic IDBlockablePublisherDescription
Approval Eventsapproval.eventsYesApprovalEvent is fired whenever some action triggered for approval
Compute allocationcompute.allocation.preYesProvisioningPre allocation for compute resources. Fired once for a cluster of machines
Compute gateway post provisioningcompute.gateway.provision.postYesProvisioningFired after a Compute gateway resource is provisioned successfully
Compute gateway post removalcompute.gateway.removal.postYesProvisioningCompute gateway post removal event topic
Compute gateway provisioningcompute.gateway.provision.preYesProvisioningFired before a Compute gateway is being provisioned
Compute gateway removalcompute.gateway.removal.preYesProvisioningCompute gateway removal event topic
Compute initial power oncompute.initial.power.onYesProvisioningFired before a compute is powered on for the first time. Currently supported for vSphere. Events are sent for each machine in a cluster.
Compute nat post provisioningcompute.nat.provision.postYesProvisioningFired after a compute nat resource is provisioned successfully
Compute nat post removalcompute.nat.removal.postYesProvisioningFired after a compute nat resource is removed successfully
Compute nat provisioningcompute.nat.provision.preYesProvisioningFired before a compute nat is being provisioned
Compute nat removalcompute.nat.removal.preYesProvisioningFired before a compute nat is being removed
Compute post migration reconcile statuscompute.post.migration.reconcileNoProvisioningFired to publish details of reconciled VM post migration
Compute post provisioncompute.provision.postYesProvisioningFired after a compute resource gets provisioned. Events are sent for each machine in a cluster.
Compute post removalcompute.removal.postYesProvisioningFired after a compute resource destroyed successfully. Events are sent for each machine in a cluster.
Compute provisioncompute.provision.preYesProvisioningFired before a compute resource is being provisioned. Events are sent for each machine in a cluster.
Compute removalcompute.removal.preYesProvisioningFired before a compute resource is being destroyed. Events are sent for each machine in a cluster.
Compute reservationcompute.reservation.preYesProvisioningPre reservation for compute resources. Fired once for a cluster of machines
Custom resource post provisioncustom.resource.provision.postYesXaaSCustom resource topic for post provision events
Custom resource pre provisioncustom.resource.provision.preYesXaaSCustom resource topic for pre provision events
Deployment action completeddeployment.action.postYesDeploymentEvent is fired after a deployment Day 2 action is executed
Deployment action requesteddeployment.action.preYesDeploymentEvent is fired before a deployment Day 2 action is executed
Deployment completeddeployment.request.postYesDeploymentEvent is fired after a deployment is provisioned for both template and catalog requests
Deployment onboardedrelocation-service.deployment.onboardedNoRelocationEmitted when a new deployment is onboarded.
Deployment requesteddeployment.request.preYesDeploymentEvent is fired before a deployment is provisioned for both template and catalog requests
Deployment resource action completeddeployment.resource.action.postYesDeploymentEvent is fired after a deployment resource Day 2 action is executed. Sent for each resource in a cluster.
Deployment resource action requesteddeployment.resource.action.preYesDeploymentEvent is fired before a deployment resource Day 2 action is executed. Sent for each resource in a cluster.
Deployment resource completeddeployment.resource.request.postYesDeploymentEvent is fired after a deployment resource is provisioned. Sent for each resource in a cluster except for Allocation resources.
Deployment resource requesteddeployment.resource.request.preYesDeploymentEvent is fired before a deployment resource is provisioned after allocation. Sent for each resource in a cluster except for Allocation resources.
Disk allocationdisk.allocation.preYesProvisioningPre allocation for disk resources
Disk attachdisk.attach.preYesProvisioningFired before a disk is attached to a machine and is a read/write event. Disk Properties supported for write back are: [1] diskFullPaths, [2] diskDatastoreNames and [3] diskParentDirs. All three vsphere specific disk properties are required together for update. Rest of the properties are read-only. Note: Write back is optional for Vsphere First class disk.
Disk detachdisk.detach.postYesProvisioningFired after a disk is detached from a machine and is a read-only event.
Disk post Removaldisk.removal.postYesProvisioningFired after a disk resource is deleted successfully
Disk post resizedisk.resize.postYesProvisioningFired after a disk resources is resized successfully
IaaS resource eventiaas.resource.eventNoCatalogTopic where IaaS resource events are broadcast
Load balancer post provisionload.balancer.provision.postYesProvisioningLoad balancer post provisioning event topic
Load balancer post removalload.balancer.removal.postYesProvisioningLoad balancer post removal event topic
Load balancer provisionload.balancer.provision.preYesProvisioningLoad balancer pre provisioning event topic
Load balancer removalload.balancer.removal.preYesProvisioningLoad balancer pre removal event topic
Network Configurenetwork.configureYesProvisioningNetwork configuration during compute allocation. Fired once for a cluster of machines.
Network post provisioningnetwork.provisioning.postYesProvisioningFired after a network resource is provisioned successfully
Network post removalnetwork.removal.postYesProvisioningFired after a network resource is removed successfully
Network provisioningnetwork.provisioning.preYesProvisioningFired before a compute network is being provisioned
Network removalnetwork.removal.preYesProvisioningFired before a network resource is being destroyed
Post unregister provisioned computeunregister.provisioned.compute.postYesProvisioningFired after a provisioned machine is unregistered
Pre unregister provisioned computeunregister.provisioned.compute.preYesProvisioningFired before a provisioned machine is unregistered
Project Lifecycle Event Topicproject-service.project.lifecycleNoProjectEmitted when a project is created, updated or deleted.
Provider resource action cudprovider.resource.action.cudNoCatalogEmitted when a resource action is created, updated or deleted.
Provisioning requestprovisioning.request.preYesProvisioningFired when a request comes into provisioning service. That may be a request to allocate, provision or a Day2 operation including removal. Allocation requests are fired once per cluster of machines. Provisioning and Day 2 requests are fired for each machine in a cluster.
Security group post provisionsecurity.group.provision.postYesProvisioningFired after a security group gets provisioned
Security group post removalsecurity.group.removal.postYesProvisioningFired after a security group is deleted
Security group provisionsecurity.group.provision.preYesProvisioningFired before a security group is being provisioned
Security group removalsecurity.group.removal.preYesProvisioningFired before a security group is being deleted
Template configurationblueprint.configurationNoBlueprintTopic for template configuration events like create/delete
Template version configurationblueprint.version.configurationNoBlueprintTopic for template versioning events like create/release/un-release/restore

Discover more from Cloud Build Tools

Subscribe to get the latest posts sent to your email.