Events

Common Event Fields

Each incoming event passes an event payload to the listener depending on the event type. Below are example payloads for each event type.

All Event messages have the following top level fields:

Key

Description

Key

Description

eventType

The event type that triggered this Event. e.g. Workflow Completed, Task Created.

actor

The actor, generally a user, that triggered this event.

object

The object the event occurred on. This could be the Project name, Release name etc.

timestamp

The time the event occurred.

payload

The specific event payload (see examples below)

 

Events

Pipeline Stage Completed

The Pipeline Stage Completed event is triggered whenever a stage succeeds or fails in a Release Pipeline Execution. Common use cases can include logic you want to perform after EVERY pipeline execution regardless of the Pipeline or Release being used. For example you may want to create a Service Now incident whenever the Production Stage fails in any pipeline. This could be easily accomplished by listening for this event but filtering for a status of FAILED and environment of PRODUCTION.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 { "eventType":"Pipeline Stage Completed", "actor":"buildmonitorworker", "object":"REST Release 1", "timestamp":"2020-12-16 15:12:41 -0500", "payload":{ "pipelineExecutionId":null, "pipelineStageExecution":{ "stageExecutionId":104516, "environmentId":11595, "executionStatus":"FAILED", "startTime":"2020-12-16 15:12:19 -0500", "endTime":"2020-12-16 15:12:41 -0500", "activeStep":null }, "pipeline":{ "pipelineId":10001, "pipelineName":"Simple" }, "environment":{ "environmentId":11595, "environmentName":"Dev", "environmentCode":"DEV" }, "release":{ "releaseId":11611, "releaseName":"REST Release 1" }, "snapshot":{ "snapshotId":104506, "snapshotName":"07-16-2020 15:12:18", "snapshotStatus":"INITIATED", "description":null, "releaseId":11611 } } }

Release Started

The Release Started event is triggered whenever a release is started in FlexDeploy. Common use cases can include logic you want to perform after any release is started. For example you may want to start a sprint in Jira whenever the release is started.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 { "eventType":"Release Started", "actor":"fdadmin", "object":"testRelease", "timestamp":"2020-08-18 16:08:48 -0500", "payload":{ "release":{ "releaseId":54052, "releaseName":"testRelease", "releaseDescription":null }, "startDate":"2020-09-18", "endDate":null, "projects":[ { "projectId":440135, "projectName":"partialFile", "streamName":"master", "buildEnvironment":{ "environmentId":null, "environmentName":null, "environmentCode":null }, "groupName":null } ], "pipeline":{ "pipelineId":17854, "pipelineName":"DanPipeline" } } }

Release Ended

The Release Ended event is triggered whenever a release is endedin FlexDeploy. Common use cases can include logic you want to perform after any release is ended. For example you may want to enda sprint in Jira whenever the release is ended.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 { "eventType":"Release Ended", "actor":"fdadmin", "object":"testRelease", "timestamp":"2020-10-18 16:10:55 -0500", "payload":{ "release":{ "releaseId":54052, "releaseName":"testRelease", "releaseDescription":null }, "startDate":"2020-09-18", "endDate":null, "projects":[ { "projectId":440135, "projectName":"partialFile", "streamName":"master", "buildEnvironment":{ "environmentId":null, "environmentName":null, "environmentCode":null }, "groupName":null } ], "pipeline":{ "pipelineId":17854, "pipelineName":"DanPipeline" } } }

Snapshot Completed

The Snapshot Completed event is triggered whenever a snapshot eventually completes successfully or fails to build.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 { "eventType":"Snapshot Completed", "actor":"fdadmin", "object":"07-16-2020 15:58:59", "timestamp":null, "payload":{ "createdBy":"fdadmin", "createdOn":"2020-58-16 15:58:57 -0500", "updatedBy":"completedsnapshotsmonitor", "updatedOn":"2020-59-16 15:59:13 -0500", "snapshot":{ "snapshotId":104530, "snapshotName":"07-16-2020 15:58:59", "snapshotStatus":"INITIATED", "description":null, "releaseId":50157 } } }

Task Created

The Task Created event is triggered whenever a human task is created. This can be triggered from either a standalone project/application or a release.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 { "eventType":"Task Created", "actor":"completedsnapshotsmonitor", "object":"Test Release", "timestamp":"2020-03-16 16:03:43 -0500", "payload":{ "createdBy":"completedsnapshotsmonitor", "createdOn":"2020-03-16 16:03:43 -0500", "updatedBy":"completedsnapshotsmonitor", "updatedOn":"2020-03-16 16:03:43 -0500", "taskId":50702, "taskStatus":"PENDING", "externalId":null, "externalSystemId":null, "externalSystemType":null, "taskNotes":null, "groupId":10942, "roleId":11601, "environment":{ "environmentId":11595, "environmentName":"Dev", "environmentCode":"DEV" }, "release":{ "releaseId":50157, "releaseName":"Test Release" }, "pipelineExecution":{ "pipelineId":54957, "pipelineExecutionId":104553, "executionStatus":"RUNNING", "activeStageExecution":{ "stageExecutionId":104554, "environmentId":11595, "executionStatus":"RUNNING_GATES", "startTime":null, "endTime":null, "activeStep":{ "id":54961, "executionId":104555, "executionStatus":"PENDING_APPROVAL", "isGate":true } } }, "snapshotId":104549, "workflow":null, "workflowRequestId":null, "project":null } }

Workflow Completed

The Workflow Completed event is triggered whenever a workflow execution succeeds or fails. Note that this event will trigger for ALL workflow types.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 { "eventType":"Workflow Completed", "actor":"fdadmin", "object":"currentStatusPartial", "timestamp":"2020-23-14 14:23:39 -0500", "payload":{ "createdBy":"fdadmin", "createdOn":"2020-23-14 14:23:25 -0500", "updatedBy":"fdadmin", "updatedOn":"2020-23-14 14:23:39 -0500", "executionStatus":"SUCCESS", "workflowExecutionId":12408, "startTime":"2020-23-14 14:23:25 -0500", "endTime":"2020-23-14 14:23:39 -0500", "workflow":{ "workflowId":1130, "workflowName":"SimpleDeployPartial", "workflowType":"DEPLOY", "workflowVersionId":1131 }, "project":{ "projectId":10002, "projectName":"currentStatusPartial" }, "projectVersionId":13101, "projectVersionName":"1.0.37", "packageName": "TestPackage", "projectStreamId":10003, "projectStreamName":"master", "instance":{ "instanceId":1168, "instanceName":"Current Status", "instanceCode":"CURRENTSTATUS" }, "environment":{ "environmentId":1166, "environmentName":"Development", "environmentCode":"DEV" }, "release":{ "releaseId":null, "releaseName":null }, "snapshot":{ "snapshotId":null, "snapshotName":null, "snapshotStatus":null, "description":null, "releaseId":null }, "workflowRequest":{ "workflowRequestId":12505, "forceDeploy":true, "triggerType":"MANUAL", "flexFields":[ null, null, null, null, null, null, null, null, null, null ], "priority":1, "allFilesRequested":false }, "issueNumbers":[ ], "cmsTickets":[ ], "testRun":null } }

 

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 { "eventType":"Workflow Completed", "actor":"fdadmin", "object":"TestProject", "timestamp":"2020-44-18 10:44:16 -0500", "payload":{ "createdBy":"fdadmin", "createdOn":"2020-43-18 10:43:57 -0500", "updatedBy":"fdadmin", "updatedOn":"2020-44-18 10:44:16 -0500", "executionStatus":"SUCCESS", "workflowExecutionId":10409, "startTime":"2020-43-18 10:43:58 -0500", "endTime":"2020-44-18 10:44:16 -0500", "workflow":{ "workflowId":1193, "workflowName":"TestWorkflow", "workflowType":"TEST", "workflowVersionId":1195 }, "project":{ "projectId":10002, "projectName":"TestProject" }, "projectVersionId":10010, "projectVersionName":"1.0.1", "projectStreamId":10003, "projectStreamName":"master", "instance":{ "instanceId":1323, "instanceName":"Local", "instanceCode":"LOCAL" }, "environment":{ "environmentId":1320, "environmentName":"Development", "environmentCode":"DEV" }, "release":null, "snapshot":null, "workflowRequest":{ "workflowRequestId":10411, "forceDeploy":false, "triggerType":"MANUAL", "flexFields":[ null, null, null, null, null, null, null, null, null, null ], "priority":null, "allFilesRequested":false }, "issueNumbers":[ ], "cmsTickets":[ ], "testRun":{ "runId":10102, "runStatus":"PASSED", "startTime":"2020-43-18 10:43:58 -0500", "endTime":"2020-44-18 10:44:16 -0500", "testSets":[ { "name":"Test Set 1", "status":"PASSED", "testTypeId":10001, "testTypeName":"Unit Tests", "testDefinitions":[ { "name":"Test Def 1", "status":"PASSED", "testingTool":"Postman", "endpointId":10001, "results":[ { "testCaseName":"GetProjects- Status code is 200", "status":"PASSED", "message":null, "maxResponseTime":null, "duration":2999, "executionCount":1 }, { "testCaseName":"GetProject- Status code is 200", "status":"PASSED", "message":null, "maxResponseTime":null, "duration":509, "executionCount":1 } ] } ] } ] } } }