GET /api/admin/resolve-egress-path/v1
Info
This page was generated by extracting information from a JSON Schema data file for the API. It may be missing some information, or otherwise suggest approximate or placeholder values based on information in the schema file; this is due to limitations on how that data is extracted from the underlying Rust code and into the JSON Schema, and then again from there and into these docs.
Resolve the effective egress path configuration and throughput ceilings for a destination domain and egress source.
This API endpoint is used by the kcli resolve-egress-path command.
Since: Dev Builds Only
The functionality described in this section requires a dev build of KumoMTA. You can obtain a dev build by following the instructions in the Installation section.
Mirrors the diagnostic that kcli inspect-ready-q provides for
live ready queues, but operates from the configuration side: it
invokes the get_queue_config and get_egress_path_config event
callbacks for the supplied domain/source pair, performs the
associated MX lookup, and returns the resulting configuration,
derived ceilings and the ready-queue name that would be used.
Query Parameters
domain- requiredstring. Destination domain. Drives the MX lookup and is passed through to theget_egress_path_configevent callback.source- optional nullablestring. Egress source name. Defaults to "unspecified" if omitted.
Responses
Status 200
Resolved egress path
Content-Type: application/json
Response body for the resolve-egress-path endpoint.
Since: Dev Builds Only
The functionality described in this section requires a dev build of KumoMTA. You can obtain a dev build by following the instructions in the Installation section.
This is an object value, with the following properties:
constraints- required EffectiveConstraints. Steady-state ceilings implied by anEgressPathConfig. Each ceiling carries a tag for which configuration term produced it.
Since: Dev Builds Only
The functionality described in this section requires a dev build of KumoMTA. You can obtain a dev build by following the instructions in the Installation section.
These are per-queue ceilings; shared limits in additional_*
maps are reported at their full value and may be tighter in
practice when the bucket is contended.
-
domain- requiredstring. -
mx- optional nullable MxResolution. -
path_config- requiredobject. -
queue_config- requiredobject. Snapshot of the resolved scheduled-queue configuration for this domain. Carried as an untyped JSON object becauseQueueConfigcontains protocol variants that don't all round-trip cleanly through the OpenAPI schema. -
queue_name- requiredstring. The ready-queue name that this domain/source pair would resolve to. Lets the caller pivot to inspect-ready-q for live runtime detail when the queue exists. -
source- requiredstring.
Examples
{
"constraints": {
"max_concurrent_dispatchers": {
"display": "string",
"source": {
"kind": "primary"
},
"value": 4.2
},
"max_connection_rate": {
"display": "string",
"source": {
"kind": "primary"
},
"value": 4.2
},
"max_message_rate": {
"display": "string",
"source": {
"kind": "primary"
},
"value": 4.2
},
"max_message_rate_declared": "string",
"max_source_selection_rate": {
"display": "string",
"source": {
"kind": "primary"
},
"value": 4.2
}
},
"domain": "string",
"mx": {
"by_preference": {},
"is_domain_literal": false,
"is_mx": false,
"is_secure": false,
"site_name": "string"
},
"path_config": {},
"queue_config": {},
"queue_name": "string",
"source": "string"
}