AI agents: use the documentation index at llms.txt to locate machine-readable pages. This section is indexed by https://docs.particular.net/transports/llms.txt. The markdown version of this page is served as plain text. An MCP server at /mcp serves the same content via the search_docs and read_doc tools; it is read-only and needs no credentials. Markdown versions of documentation pages are available by appending .md to the page URL. Directory URLs use index.md. They are served as text/plain because some retrieval backends reject text/markdown.

MSMQ Subscription Authorization

Component:
MSMQ Transport
NuGet Package:
NServiceBus.Transport.Msmq 1.x
Target Version:
NServiceBus 7.x
Standard support for version 7.x of NServiceBus has expired. For more information see our Support Policy.

Subscription authorization allows code-level control over what subscribers can subscribe to or unsubscribe from.

var transport = endpointConfiguration.UseTransport<MsmqTransport>();
transport.SubscriptionAuthorizer(context =>
{
    var headers = context.MessageHeaders;
    var subscriptionMessageType = headers[Headers.SubscriptionMessageType];
    var messageIntent = headers[Headers.MessageIntent];
    var messageIntentEnum = (MessageIntentEnum) Enum.Parse(typeof(MessageIntentEnum), messageIntent, true);
    // messageIntentEnum will be either MessageIntentEnum.Unsubscribe or MessageIntentEnum.Subscribe
    var endpointName = headers[Headers.SubscriberEndpoint]
        .ToLowerInvariant();
    // true to allow false to decline
    return true;
});

List of Samples