Testkube Agent /webhooks operations
Testkube API (1.0.0)
Download OpenAPI specification:Download
Testkube provides a Kubernetes-native framework for test definition, execution and results
List webhooks
List webhooks available in cluster
query Parameters
selector | string Labels to filter by |
Responses
Response samples
- 200
- 400
- 502
[- {
- "name": "webhook1",
- "namespace": "testkube",
- "events": [
- "start-test"
], - "selector": "string",
- "payloadObjectField": "string",
- "payloadTemplate": "string",
- "payloadTemplateReference": "string",
- "headers": {
- "Content-Type": "application/xml"
}, - "labels": {
- "env": "prod",
- "app": "backend"
}, - "annotations": {
- "env": "prod",
- "app": "backend"
}, - "disabled": [
- true,
- false
]
}
]
Create new webhook
Create new webhook based on variables passed in request
Request Body schema: required
webhook request body data
name | string |
namespace | string |
uri required | string |
events required | Array of strings (EventType) Items Enum: "start-test" "end-test-success" "end-test-failed" "end-test-aborted" "end-test-timeout" "become-test-up" "become-test-down" "become-test-failed" "become-test-aborted" "become-test-timeout" "start-testsuite" "end-testsuite-success" "end-testsuite-failed" "end-testsuite-aborted" "end-testsuite-timeout" "become-testsuite-up" "become-testsuite-down" "become-testsuite-failed" "become-testsuite-aborted" "become-testsuite-timeout" "queue-testworkflow" "start-testworkflow" "end-testworkflow-success" "end-testworkflow-failed" "end-testworkflow-aborted" "become-testworkflow-up" "become-testworkflow-down" "become-testworkflow-failed" "become-testworkflow-aborted" "created" "updated" "deleted" |
selector | string Labels to filter for tests and test suites |
payloadObjectField | string will load the generated payload for notification inside the object |
payloadTemplate | string golang based template for notification payload |
payloadTemplateReference | string name of the template resource |
object webhook headers (golang template supported) | |
object webhook labels | |
object webhook annotations | |
disabled | boolean Default: false whether webhook is disabled |
Responses
Request samples
- Payload
{- "name": "webhook1",
- "namespace": "testkube",
- "events": [
- "start-test"
], - "selector": "string",
- "payloadObjectField": "string",
- "payloadTemplate": "string",
- "payloadTemplateReference": "string",
- "headers": {
- "Content-Type": "application/xml"
}, - "labels": {
- "env": "prod",
- "app": "backend"
}, - "annotations": {
- "env": "prod",
- "app": "backend"
}, - "disabled": [
- true,
- false
]
}
Response samples
- 201
- 400
- 502
{- "name": "webhook1",
- "namespace": "testkube",
- "events": [
- "start-test"
], - "selector": "string",
- "payloadObjectField": "string",
- "payloadTemplate": "string",
- "payloadTemplateReference": "string",
- "headers": {
- "Content-Type": "application/xml"
}, - "labels": {
- "env": "prod",
- "app": "backend"
}, - "annotations": {
- "env": "prod",
- "app": "backend"
}, - "disabled": [
- true,
- false
]
}
Get webhook details
Returns webhook
path Parameters
id required | string unique id of the object |
Responses
Response samples
- 200
- 400
- 404
- 500
- 502
{- "name": "webhook1",
- "namespace": "testkube",
- "events": [
- "start-test"
], - "selector": "string",
- "payloadObjectField": "string",
- "payloadTemplate": "string",
- "payloadTemplateReference": "string",
- "headers": {
- "Content-Type": "application/xml"
}, - "labels": {
- "env": "prod",
- "app": "backend"
}, - "annotations": {
- "env": "prod",
- "app": "backend"
}, - "disabled": [
- true,
- false
]
}
Update new webhook
Update new webhook based on variables passed in request
path Parameters
id required | string unique id of the object |
Request Body schema: required
webhook request body data
name | string |
namespace | string |
uri required | string |
events required | Array of strings (EventType) Items Enum: "start-test" "end-test-success" "end-test-failed" "end-test-aborted" "end-test-timeout" "become-test-up" "become-test-down" "become-test-failed" "become-test-aborted" "become-test-timeout" "start-testsuite" "end-testsuite-success" "end-testsuite-failed" "end-testsuite-aborted" "end-testsuite-timeout" "become-testsuite-up" "become-testsuite-down" "become-testsuite-failed" "become-testsuite-aborted" "become-testsuite-timeout" "queue-testworkflow" "start-testworkflow" "end-testworkflow-success" "end-testworkflow-failed" "end-testworkflow-aborted" "become-testworkflow-up" "become-testworkflow-down" "become-testworkflow-failed" "become-testworkflow-aborted" "created" "updated" "deleted" |
selector | string Labels to filter for tests and test suites |
payloadObjectField | string will load the generated payload for notification inside the object |
payloadTemplate | string golang based template for notification payload |
payloadTemplateReference | string name of the template resource |
object webhook headers (golang template supported) | |
object webhook labels | |
object webhook annotations | |
disabled | boolean Default: false whether webhook is disabled |
Responses
Request samples
- Payload
{- "name": "webhook1",
- "namespace": "testkube",
- "events": [
- "start-test"
], - "selector": "string",
- "payloadObjectField": "string",
- "payloadTemplate": "string",
- "payloadTemplateReference": "string",
- "headers": {
- "Content-Type": "application/xml"
}, - "labels": {
- "env": "prod",
- "app": "backend"
}, - "annotations": {
- "env": "prod",
- "app": "backend"
}, - "disabled": [
- true,
- false
]
}
Response samples
- 200
- 400
- 404
- 502
{- "name": "webhook1",
- "namespace": "testkube",
- "events": [
- "start-test"
], - "selector": "string",
- "payloadObjectField": "string",
- "payloadTemplate": "string",
- "payloadTemplateReference": "string",
- "headers": {
- "Content-Type": "application/xml"
}, - "labels": {
- "env": "prod",
- "app": "backend"
}, - "annotations": {
- "env": "prod",
- "app": "backend"
}, - "disabled": [
- true,
- false
]
}