Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents

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

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.

Expand
titlePipeline Stage Completed
Code Block
{
    "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.

Expand
titleRelease Started Payload
Code Block
languagejson
{
    "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.

Expand
titleRelease Ended Payload
Code Block
languagejson
{
    "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.

Expand
titleSnapshot Completed Payload
Code Block
languagejson
{
    "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.

Expand
titleTask Created Payload
Code Block
{
    "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.

Expand
titleWorkflow Completed (DEPLOY) Event Payload
Code Block
languagejson
{
    "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
    }
}

Expand
titleWorkflow Completed (TEST) Event Payload
Code Block
languagejson
{
    "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
                                }
                            ]
                        }
                    ]
                }
            ]
        }
    }
}