Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The HTTP method is always POST and the payload depends on the event that triggered the webhook.

Property

Description

WebHookIdentifier

This is set to the identifier that can be set as an optional parameter at the webhook configuration (see above).

IssueFilter, ChecklistFilter, TestObjectFilter, PdfFilter, UserFilter, or TimerFilter

Depending on the event that triggered the workflow these are set.

TriggeredByWorkflowId

Id of the workflow that triggered the event. Only set if the event was triggered by a workflow.

TenantId

Id of the tenant.

EntityType

Gives information about the event that triggered the webhook: 1 (issue), 2 (checklist), 3 (testobject), 4 (pdf), 5 (user), or 6 (timertrigger).

Action

Tells whether 1 (created) or 2 (updated) triggered the webhook.

In our case a checklist has been created, so 1 is set.

ChangedValues

Only set if the triggering event is an update event. Shows the values that were changed in this update.

EntityId

External Id of the object that triggered the webhook.

In our case this is the external id of the created checklist.

EntityUrl

URL where details of the object that triggered the webhook can be found.

In our case the created checklist can be queried via GET-request to this URL.

CreatedAt

Date and time when the event took place.

Expand
titleSchema of the webhook message
Code Block
{
    "webHookIdentifier": "string",
    "issueFilter": {
      "createdById": "00000000-0000-0000-0000-000000000000",
      "modifiedById": "00000000-0000-0000-0000-000000000000",
      "assignedToId": "00000000-0000-0000-0000-000000000000",
      "testObjectId": "00000000-0000-0000-0000-000000000000",
      "testObjectExternalId": "string",
      "testObjectTypeId": "00000000-0000-0000-0000-000000000000",
      "state": "issueState",
      "issueCategoryId": "00000000-0000-0000-0000-000000000000",
      "issueSeverityId": "00000000-0000-0000-0000-000000000000",
      "title": "string",
      "description": "string",
      "scheduledFor": "2023-03-27T11:08:24.661Z"
    },
    "checklistFilter": {
      "externalId": "string",
      "createdById": "00000000-0000-0000-0000-000000000000",
      "modifiedById": "00000000-0000-0000-0000-000000000000",
      "assignedToId": "00000000-0000-0000-0000-000000000000",
      "testObjectId": "00000000-0000-0000-0000-000000000000",
      "testObjectExternalId": "string",
      "testObjectTypeId": "00000000-0000-0000-0000-000000000000",
      "state": "testItemState",
      "checklistTemplateId": "00000000-0000-0000-0000-000000000000",
      "scheduledFor": "2023-03-27T11:08:24.661Z",
      "score": 0
    },
    "testObjectFilter": {
      "createdById": "00000000-0000-0000-0000-000000000000",
      "testObjectTypeId": "00000000-0000-0000-0000-000000000000",
      "testObjectId": "00000000-0000-0000-0000-000000000000",
      "testObjectExternalId": "string"
    },
    "pdfFilter": {
      "pdfProfileId": "00000000-0000-0000-0000-000000000000",
      "userId": "00000000-0000-0000-0000-000000000000"
    },
    "userFilter": {
      "userId": "00000000-0000-0000-0000-000000000000",
      "groupIds": [
        "00000000-0000-0000-0000-000000000000"
      ],
      "roleIds": [
        "string"
      ]
    },
    "timerFilter": {
      "actorId": "00000000-0000-0000-0000-000000000000",
      "cronExpression": "string"
    },
    "triggeredByWorkflowId": "00000000-0000-0000-0000-000000000000",
    "tenantId": "00000000-0000-0000-0000-000000000000",
    "entityType": "subscriptionEntityType",
    "action": "eventActions",
    "changedValues": {
      "additionalProp1": {
        "oldValue": {},
        "newValue": {}
      },
      "additionalProp2": {
        "oldValue": {},
        "newValue": {}
      },
      "additionalProp3": {
        "oldValue": {},
        "newValue": {}
      }
    },
    "entityId": "00000000-0000-0000-0000-000000000000",
    "entityUrl": "string",
    "createdAt": "2023-03-27T11:08:24.661Z",
    "testifyCorrelationId": "string"
}

IssueState

Code Block
Draft = 0,
Opened = 1,
Resolved = 2,
Verified = 3,
Deleted = 99

TestItemState

Code Block
Open = 0,
InProgress = 1,
Completed = 2, (deprecated)
Done = 3,
Verified = 4,
Removed = 99

SubscriptionEntityType

Code Block
Issue = 1,
Checklist = 2,
TestObject = 3,
Pdf = 4,
User = 5,
TimerTigger = 6

EventActions

Code Block
Created = 1,
Modified = 2

...

All localizations implemented in Testify can also be used in the Testify API. Every tenant has a default language which normally is English (US). Following languages are available:

Iso-Code

Title

bs

Bosanski

de-AT

Deutsch

en-GB

English (UK)

en-IN

English (India)

en-US

English (US)

es-MX

Español

fr

Français

nl

Nederlands

pt-BR

Português

ru

русский

zh-CN

中文(中国)

zh-TW

中文(台灣)

Example for creating a custom field with a title in multiple languages

...

Code Block
languagenone
String = 1,
Numeric = 2,
Boolean = 3,
DateTime = 4,
LocalizedString = 5,
StringArray = 6,
NumericArray = 7,
BooleanArray = 8,
DateTimeArray = 9,
LocalizedStringArray = 10,
JsonStringArray = 11,
TestObjectTypeArray = 12
Expand
titleDetails

Enum
Number

Name

Example Value

1, 6, 11, 12

String, StringArray, JsonStringArray, TestObjectTypeArray

"text"

2, 7

Numeric, NumericArray

0.000000000000

3, 8

Boolean, BooleanArray

true

4, 9

DateTime, DateTimeArray

2021-01-01 00:00:00.000

5, 10

LocalizedString, LocalizedStringArray

Code Block
{
    "id": "73f19913-9ccb-4a8f-82b2-25151cc16ded",
    "translations": {
        "en-US": "english translation"
    }
}

...

Expand
titleParameters
Code Block
"plugin": {
    "name": "testify_test_object_selection_testcase",
    "parameters": [
        {
            "name": "checkScoreNegativeResult",
            "value": 0.000000000000,
            "type": 2,
            "order": 0
        },
        {
            "name": "checkScorePositiveResult",
            "value": 1.000000000000,
            "type": 2,
            "order": 0
        },
        {
            "name": "multiselect",
            "value": false,
            "type": 3,
            "order": 0
        },
        {
            "name": "positiveValidation",
            "value": true,
            "type": 3,
            "order": 0
        },
        {
            "name": "selectionType",
            "value": 0.000000000000,
            "type": 2,
            "order": 0
        }
    ]
}

Possible parameters:

Name

ParameterType

IsMandatory

multiselect

3

1

positiveValidation

3

1

selectionType

2

1

checkScoreNegativeResult

2

0

checkScorePositiveResult

2

0

isScoringEnabled

3

0

testObjectType

12

0

Text Check - testify_texttestcase

...