mirror of
https://github.com/axllent/mailpit.git
synced 2025-07-01 00:45:27 +02:00
143 lines
3.4 KiB
Go
143 lines
3.4 KiB
Go
![]() |
// Package apiv1 provides the API v1 endpoints for Mailpit.
|
||
|
//
|
||
|
// These structs are for the purpose of defining swagger HTTP responses in go-swagger
|
||
|
// in order to generate a spec file. They are lowercased to avoid exporting them as public types.
|
||
|
//
|
||
|
//nolint:unused
|
||
|
package apiv1
|
||
|
|
||
|
import (
|
||
|
"github.com/axllent/mailpit/internal/smtpd/chaos"
|
||
|
"github.com/axllent/mailpit/internal/stats"
|
||
|
)
|
||
|
|
||
|
// Binary data response which inherits the attachment's content type.
|
||
|
// swagger:response BinaryResponse
|
||
|
type binaryResponse string
|
||
|
|
||
|
// Plain text response
|
||
|
// swagger:response TextResponse
|
||
|
type textResponse string
|
||
|
|
||
|
// HTML response
|
||
|
// swagger:response HTMLResponse
|
||
|
type htmlResponse string
|
||
|
|
||
|
// Server error will return with a 400 status code
|
||
|
// with the error message in the body
|
||
|
// swagger:response ErrorResponse
|
||
|
type errorResponse string
|
||
|
|
||
|
// Not found error will return a 404 status code
|
||
|
// swagger:response NotFoundResponse
|
||
|
type notFoundResponse string
|
||
|
|
||
|
// Plain text "ok" response
|
||
|
// swagger:response OKResponse
|
||
|
type okResponse string
|
||
|
|
||
|
// Plain JSON array response
|
||
|
// swagger:response ArrayResponse
|
||
|
type arrayResponse []string
|
||
|
|
||
|
// JSON error response
|
||
|
// swagger:response JSONErrorResponse
|
||
|
type jsonErrorResponse struct {
|
||
|
// A JSON-encoded error response
|
||
|
//
|
||
|
// in: body
|
||
|
Body struct {
|
||
|
// Error message
|
||
|
// example: invalid format
|
||
|
Error string
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Web UI configuration response
|
||
|
// swagger:response WebUIConfigurationResponse
|
||
|
type webUIConfigurationResponse struct {
|
||
|
// Web UI configuration settings
|
||
|
//
|
||
|
// in: body
|
||
|
Body struct {
|
||
|
// Optional label to identify this Mailpit instance
|
||
|
Label string
|
||
|
// Message Relay information
|
||
|
MessageRelay struct {
|
||
|
// Whether message relaying (release) is enabled
|
||
|
Enabled bool
|
||
|
// The configured SMTP server address
|
||
|
SMTPServer string
|
||
|
// Enforced Return-Path (if set) for relay bounces
|
||
|
ReturnPath string
|
||
|
// Only allow relaying to these recipients (regex)
|
||
|
AllowedRecipients string
|
||
|
// Block relaying to these recipients (regex)
|
||
|
BlockedRecipients string
|
||
|
// Overrides the "From" address for all relayed messages
|
||
|
OverrideFrom string
|
||
|
// Preserve the original Message-IDs when relaying messages
|
||
|
PreserveMessageIDs bool
|
||
|
|
||
|
// DEPRECATED 2024/03/12
|
||
|
// swagger:ignore
|
||
|
RecipientAllowlist string
|
||
|
}
|
||
|
|
||
|
// Whether SpamAssassin is enabled
|
||
|
SpamAssassin bool
|
||
|
|
||
|
// Whether Chaos support is enabled at runtime
|
||
|
ChaosEnabled bool
|
||
|
|
||
|
// Whether messages with duplicate IDs are ignored
|
||
|
DuplicatesIgnored bool
|
||
|
|
||
|
// Whether the delete button should be hidden
|
||
|
HideDeleteAllButton bool
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Application information
|
||
|
// swagger:response AppInfoResponse
|
||
|
type appInfoResponse struct {
|
||
|
// Application information
|
||
|
//
|
||
|
// in: body
|
||
|
Body stats.AppInformation
|
||
|
}
|
||
|
|
||
|
// Response for the Chaos triggers configuration
|
||
|
// swagger:response ChaosResponse
|
||
|
type chaosResponse struct {
|
||
|
// The current Chaos triggers
|
||
|
//
|
||
|
// in: body
|
||
|
Body chaos.Triggers
|
||
|
}
|
||
|
|
||
|
// Message headers
|
||
|
// swagger:model MessageHeadersResponse
|
||
|
type messageHeadersResponse map[string][]string
|
||
|
|
||
|
// Summary of messages
|
||
|
// swagger:response MessagesSummaryResponse
|
||
|
type messagesSummaryResponse struct {
|
||
|
// The messages summary
|
||
|
// in: body
|
||
|
Body MessagesSummary
|
||
|
}
|
||
|
|
||
|
// Confirmation message for HTTP send API
|
||
|
// swagger:response SendMessageResponse
|
||
|
type sendMessageResponse struct {
|
||
|
// Response for sending messages via the HTTP API
|
||
|
//
|
||
|
// in: body
|
||
|
Body struct {
|
||
|
// Database ID
|
||
|
// example: iAfZVVe2UQfNSG5BAjgYwa
|
||
|
ID string
|
||
|
}
|
||
|
}
|