Feature: Link check to test message links

@see #151
This commit is contained in:
Ralph Slooten
2023-08-16 16:59:31 +12:00
parent 8dbc661cb7
commit d01fb4044e
14 changed files with 846 additions and 31 deletions

View File

@@ -124,7 +124,7 @@
},
"/api/v1/message/{ID}/html-check": {
"get": {
"description": "Returns the summary of HTML check.\n\nNOTE: This feature is currently in beta and is documented for reference only.\nPlease do not integrate with it (yet) as there may be changes.",
"description": "Returns the summary of the message HTML checker.\n\nNOTE: This feature is currently in beta and is documented for reference only.\nPlease do not integrate with it (yet) as there may be changes.",
"produces": [
"application/json"
],
@@ -159,6 +159,50 @@
}
}
},
"/api/v1/message/{ID}/link-check": {
"get": {
"description": "Returns the summary of the message Link checker.\n\nNOTE: This feature is currently in beta and is documented for reference only.\nPlease do not integrate with it (yet) as there may be changes.",
"produces": [
"application/json"
],
"schemes": [
"http",
"https"
],
"tags": [
"Other"
],
"summary": "Link check (beta)",
"operationId": "LinkCheckResponse",
"parameters": [
{
"type": "string",
"description": "Database ID",
"name": "ID",
"in": "path",
"required": true
},
{
"type": "boolean",
"default": false,
"description": "Follow redirects",
"name": "follow",
"in": "query"
}
],
"responses": {
"200": {
"description": "LinkCheckResponse",
"schema": {
"$ref": "#/definitions/LinkCheckResponse"
}
},
"default": {
"$ref": "#/responses/ErrorResponse"
}
}
}
},
"/api/v1/message/{ID}/part/{PartID}": {
"get": {
"description": "This will return the attachment part using the appropriate Content-Type.",
@@ -828,6 +872,46 @@
"x-go-name": "Warning",
"x-go-package": "github.com/axllent/mailpit/utils/htmlcheck"
},
"Link": {
"description": "Link struct",
"type": "object",
"properties": {
"Status": {
"description": "HTTP status definition",
"type": "string"
},
"StatusCode": {
"description": "HTTP status code",
"type": "integer",
"format": "int64"
},
"URL": {
"description": "Link URL",
"type": "string"
}
},
"x-go-package": "github.com/axllent/mailpit/utils/linkcheck"
},
"LinkCheckResponse": {
"description": "Response represents the Link check response",
"type": "object",
"properties": {
"Errors": {
"description": "Total number of errors",
"type": "integer",
"format": "int64"
},
"Links": {
"description": "Tested links",
"type": "array",
"items": {
"$ref": "#/definitions/Link"
}
}
},
"x-go-name": "Response",
"x-go-package": "github.com/axllent/mailpit/utils/linkcheck"
},
"Message": {
"description": "Message data excluding physical attachments",
"type": "object",