NAV Navbar
shell

Introduction

Welcome to the Qase.io Webhooks documentation! Webhooks is a way to notify your services about changes happened in Qase. A webhook consists of:

This documentation describes the structure of events and their payloads.

Event structure

Request example:

{
    "event": "case.created",
    "timestamp": 1570000000,
    "payload": {}
}

All requests that are produced by Qase are POST requests with data in JSON format with following data structure:

Parameter Type Description
event string Event name
timestamp integer Time when event has been triggered
payload array An object with payload data related to event

Test case

Created

Payload example:

{
     "id": 5,
     "position": 1,
     "title": "Test case",
     "description": "Description for case",
     "preconditions": "",
     "postconditions": "",
     "severity": "blocker",
     "priority": "high",
     "type": "functional",
     "behavior": "position",
     "is_automated": false,
     "is_deprecated": false,
     "milestone_id": null,
     "suite_id": 1,
     "revision": 1,
     "custom_fields": [],
     "attachments": [],
     "steps": [],
     "created": "2019-07-21T13:24:08.000000Z",
     "updated": "2019-07-21T13:24:08.000000Z"
}

This event is being sent when a new test case is created.

Event name

case.created

Payload fields

Parameter Type Description
title String Test case title
description string Test case description
preconditions string Test case preconditions
postconditions string Test case postconditions
severity string Possible value: undefined, blocked, critical, major, normal, minor, trivial
priority string Possible value: undefined, high, medium, low
type string Possible value: other, functional smoke, regression, security, usability, performance, acceptance
behavior string Possible value: undefined, positive negative, destructive
suite_id int Suite ID (nullable)
milestone_id int Milestone_id (nullable)
is_automated bool
is_deprecated bool
revision int Test case version
steps step An array of test steps objects.
attachments array An array of attachments ids.
custom_fields custom_field An array of custom fields objects.

Step object

Parameter Type Description
position int Step position
action string Required field (if shared_step_id is not provided). Can't be empty.
expected_result string
shared_hash id A hash of shared step.
attachments array An array of attachments IDs.

Custom field object

Parameter Type Description
field_id string An ID of custom field. Required field.
value string Custom field value. Required field.

Updated

Payload example:

{
     "id": 5
}

This event is being sent when a test case is updated. It returns only ID of test case and notifies that fields were updated.

Event name

case.updated

Payload fields

Parameter Type Description
id int Test case ID

Deleted

Payload example:

{
     "id": 5
}

This event is being sent when a test case is deleted.

Event name

case.deleted

Payload fields

Parameter Type Description
id int Test case ID

Cloned

Payload example:

{
     "id": 5,
     "from_id": 1
}

This event is being sent when a test case is cloned.

Event name

case.cloned

Payload fields

Parameter Type Description
id int Test case ID (clone)
from_id int Test case ID (original)

Suite

Created

Payload example:

{
     "id": 1,
     "title": "Test suite",
     "description": "Authorization",
     "preconditions": "",
     "parent_id": null
}

This event is being sent when a new test suite is created.

Event name

suite.created

Payload fields

Parameter Type Description
id int Test suite ID
title string Test suite title
description string Test suite description
preconditions string Test suite preconditions
parent_id int ID of parent test suite

Updated

Payload example:

{
     "id": 5
}

This event is being sent when a test suite is updated. It returns only ID of test suite and notifies that fields were updated.

Event name

suite.updated

Payload fields

Parameter Type Description
id int Test suite ID

Deleted

Payload example:

{
     "id": 1
}

This event is being sent when a test suite is deleted.

Event name

suite.deleted

Payload fields

Parameter Type Description
id int Test suite ID

Cloned

Payload example:

{
     "id": 2,
     "from_id": 1
}

This event is being sent when a test suite is cloned.

Event name

suite.cloned

Payload fields

Parameter Type Description
id int Test suite ID (clone)
from_id int Test suite ID (original)

Milestone

Created

Payload example:

{
     "id": 1,
     "title": "Release 1.0",
     "description": "First release of our app"
}

This event is being sent when a new milestone is created.

Event name

milestone.created

Payload fields

Parameter Type Description
id int Milestone ID
title string Milestone title
description string Milestone description

Updated

Payload example:

{
     "id": 1
}

This event is being sent when a milestone is updated.

Event name

milestone.updated

Payload fields

Parameter Type Description
id int Milestone ID

Deleted

Payload example:

{
     "id": 1
}

This event is being sent when a milestone is deleted.

Event name

milestone.deleted

Payload fields

Parameter Type Description
id int Milestone ID

Shared Step

Created

Payload example:

{
     "hash": "0223905c291bada23e6049d415385982af92d758",
     "title": "Shared step",
     "action": "Open web page",
     "expected_result": "Web page is opened"
}

This event is being sent when a new shared step is created.

Event name

shared_step.created

Payload fields

Parameter Type Description
hash string Shared step hash
title string Shared step title
action string Shared step action
expected_result string Shared step expected result

Updated

Payload example:

{
     "hash": "0223905c291bada23e6049d415385982af92d758"
}

This event is being sent when a shared step is updated.

Event name

shared_step.updated

Payload fields

Parameter Type Description
id string Shared step hash

Deleted

Payload example:

{
     "hash": "0223905c291bada23e6049d415385982af92d758"
}

This event is being sent when a shared_step is deleted.

Event name

shared_step.deleted

Payload fields

Parameter Type Description
hash string Shared step hash

Test Plan

Created

Payload example:

{
     "id": 1,
     "title": "Test suite",
     "description": "Authorization",
     "cases": [1, 2, 3]
}

This event is being sent when a new test plan is created.

Event name

plan.created

Payload fields

Parameter Type Description
id int Test plan ID
title string Test plan title
description string Test plan description
cases array An array with test case ids

Updated

Payload example:

{
     "id": 5
}

This event is being sent when a test plan is updated.

Event name

plan.updated

Payload fields

Parameter Type Description
id int Test plan ID
cases array An array with test case ids

Deleted

Payload example:

{
     "id": 1,
     "cases": [1, 2, 3]
}

This event is being sent when a test plan is deleted.

Event name

plan.deleted

Payload fields

Parameter Type Description
id int Test plan ID

Test Run

Started

Payload example:

{
     "id": 1,
     "title": "Test run",
     "description": "Regression",
     "plan": 1,
     "cases_count": 100,
     "environment": null
}

This event is being sent when a new test run is started.

Event name

run.started

Payload fields

Parameter Type Description
id int Test run ID
title string Test run title
description string Test run description
plan_id int Test plan ID. Nullable.
cases_count int Amount of test cases in run
environment string Environment slug. Nullable.

Updated

Payload example:

{
     "id": 1,
     "cases_added": 100
}

This event is being sent when a test plan is updated and new test cases were added.

Event name

run.updated

Payload fields

Parameter Type Description
id int Test run ID
cases_added array Amount of test cases added to the run

Aborted

Payload example:

{
     "id": 1,
     "cases": 40,
     "passed": 10,
     "untested": 10,
     "failed": 10,
     "blocked": 10,
     "duration": 600
}

This event is being sent when a test run is aborted.

Event name

run.aborted

Payload fields

Parameter Type Description
id int Test run ID
cases int Amount of test cases in a run
passed int Amount of passed cases
failed int Amount of failed cases
untested int Amount of untested cases
blocked int Amount of blocked cases
duration int Test run duration in seconds

Completed

Payload example:

{
     "id": 1,
     "cases": 40,
     "passed": 10,
     "failed": 10,
     "blocked": 10,
     "duration": 600
}

This event is being sent when a test run is successfully completed.

Event name

run.completed

Payload fields

Parameter Type Description
id int Test run ID
cases int Amount of test cases in a run
passed int Amount of passed cases
failed int Amount of failed cases
blocked int Amount of blocked cases
duration int Test run duration in seconds

Deleted

Payload example:

{
     "id": 1
}

This event is being sent when a test run is deleted.

Event name

run.deleted

Payload fields

Parameter Type Description
id int Test run ID

Report visibility changed

Payload example:

{
     "id": 1,
     "visible": true
}

This event is being sent when a public report visibility has been changed.

Event name

run.report_changed

Payload fields

Parameter Type Description
id int Test run ID
visible boolean Shows if public report is available or not

Defect

Created

Payload example:

{
     "id": 1,
     "title": "Authorization",
     "case_id": 1,
     "step": 1,
     "actual_result": "Something went wrong",
     "attachments": [1,2,3]
}

This event is being sent when a new defect is created.

Event name

defect.created

Payload fields

Parameter Type Description
id int Defect ID
title string Defect title
case_id int Test case ID where error occured
step int Step where error occured
actual_result string A text description of defect
attachments array An array of attachments ids.

Updated

Payload example:

{
     "id": 1
}

This event is being sent when a defect is resolved.

Event name

defect.resolved

Payload fields

Parameter Type Description
id int Defect ID

Deleted

Payload example:

{
     "id": 1,
}

This event is being sent when a defect is deleted.

Event name

defect.deleted

Payload fields

Parameter Type Description
id int Defect ID

Custom Field

Created

Payload example:

{
     "id": 1,
     "title": "Text",
     "isRequired": false,
     "isFilterable": false,
     "isVisible": false,
     "default_value": "",
     "value": null,
     "type": "string"
}

This event is being sent when a new custom field is created.

Event name

custom_field.created

Payload fields

Parameter Type Description
id int Custom field ID
title string Custom field title
isRequired boolean A boolean value that indicates, that custom field should be filled on case create/update page.
isFilterable boolean A boolean value that indicates, that custom field will be shown in filters
isVisible boolean A boolean value that indicates, that custom field will be visible in preview and on test case page.
default_value string Default value for custom field
value object Available only for selectbox fields. An object with selectbox values.
type string Custom field type. Available values: number, string, text, selectbox, checkbox.

Updated

Payload example:

{
     "id": 1
}

This event is being sent when a custom field is updated.

Event name

custom_field.updated

Payload fields

Parameter Type Description
id int Custom field ID

Deleted

Payload example:

{
     "id": 1
}

This event is being sent when a custom field is deleted.

Event name

custom_field.deleted

Payload fields

Parameter Type Description
id int Custom field ID