ข้ามไปยังเนื้อหา

Class HttpInvitationDeliveryOptions

เนื้อหานี้ยังไม่ได้แปลเป็นภาษาไทย แสดงเป็นภาษาอังกฤษแทน

Namespace: Cephalon.MultiTenancy.Governance.HttpDelivery.Configuration
Assembly: Cephalon.MultiTenancy.Governance.HttpDelivery.dll

Configures HTTP webhook delivery for tenant invitations dispatched by the governance companion pack.

public sealed class HttpInvitationDeliveryOptions

objectHttpInvitationDeliveryOptions

object.Equals(object?), object.Equals(object?, object?), object.GetHashCode(), object.GetType(), object.ReferenceEquals(object?, object?), object.ToString()

The HTTP sender queues or sends a delivery request to a configured endpoint. It does not guarantee final recipient delivery and does not encode product-specific email, SMS, chat, or identity-provider semantics.

Creates HTTP invitation delivery options with the default sender identifier and timeout.

public HttpInvitationDeliveryOptions()

Gets or sets a value indicating whether an idempotency key header should be added to delivery requests.

public bool EnableIdempotencyHeader { get; set; }

bool

The key stays stable across retry attempts for the same dispatch and helps receivers de-duplicate side effects.

Gets or sets a value indicating whether the HTTP invitation sender should be registered.

public bool Enabled { get; set; }

bool

Gets or sets the absolute HTTP endpoint that receives invitation delivery payloads.

public string? Endpoint { get; set; }

string?

Gets or sets explicit response status codes that indicate the webhook accepted the dispatch.

public IReadOnlyList<int> ExpectedStatusCodes { get; set; }

IReadOnlyList<int>

When empty, any successful 2xx response is accepted.

Gets or sets additional HTTP headers added to every delivery request.

public IReadOnlyDictionary<string, string> Headers { get; set; }

IReadOnlyDictionary<string, string>

Gets or sets the request header that carries the delivery idempotency key.

public string IdempotencyHeaderName { get; set; }

string

Gets or sets the dispatch metadata key that can supply a caller-owned idempotency key.

public string IdempotencyMetadataKey { get; set; }

string

When the metadata key is absent or empty, the sender derives a stable hashed key from the tenant, invitation, channel, and sender identifiers. Caller-supplied values that are too long or unsafe for HTTP headers are hashed before being sent.

Gets or sets a value indicating whether invitation metadata should be included in the webhook payload.

public bool IncludeInvitationMetadata { get; set; }

bool

Gets or sets a value indicating whether dispatch request metadata should be included in the webhook payload.

public bool IncludeRequestMetadata { get; set; }

bool

Gets or sets a value indicating whether a bounded response body excerpt should be copied into sender metadata.

public bool IncludeResponseBodyInMetadata { get; set; }

bool

Gets or sets the total number of HTTP dispatch attempts for transient delivery failures.

public int MaxAttempts { get; set; }

int

The value is clamped to the supported range of 1 through 10. The default preserves single-attempt behavior.

Gets or sets the HTTP method used for delivery requests.

public string Method { get; set; }

string

Gets or sets the response header that contains the provider message identifier.

public string? ProviderMessageIdHeaderName { get; set; }

string?

Gets or sets the maximum response body characters copied into sender metadata when enabled.

public int ResponseBodyMetadataLimit { get; set; }

int

Gets or sets the fixed delay, in milliseconds, between retry attempts.

public int RetryDelayMilliseconds { get; set; }

int

The value is clamped to the supported range of 0 through 60000 milliseconds.

Gets or sets response status codes that should be retried when the dispatch has attempts remaining.

public IReadOnlyList<int> RetryStatusCodes { get; set; }

IReadOnlyList<int>

The default covers common transient HTTP responses: 408, 429, 500, 502, 503, and 504.

Gets or sets a value indicating whether transient transport failures should be retried when attempts remain.

public bool RetryTransportFailures { get; set; }

bool

Gets or sets the sender identifier used by TenantInvitationDeliveryRequest.SenderId.

public string SenderId { get; set; }

string

Gets or sets the request header that carries the webhook signature.

public string SignatureHeaderName { get; set; }

string

Gets or sets the request header that carries the optional signing key identifier.

public string SignatureKeyIdHeaderName { get; set; }

string

Gets or sets the request header that carries the Unix timestamp included in the webhook signature.

public string SignatureTimestampHeaderName { get; set; }

string

Gets or sets an optional key identifier sent with signed webhook requests.

public string? SigningKeyId { get; set; }

string?

Gets or sets the shared secret used to sign webhook payloads with HMAC-SHA256.

public string? SigningSecret { get; set; }

string?

When empty, the sender does not add Cephalon webhook signature headers.

Gets or sets delivery channels accepted by this sender.

public IReadOnlyList<string> SupportedChannels { get; set; }

IReadOnlyList<string>

When empty, the sender accepts every requested channel.

Gets or sets the maximum time allowed for the HTTP delivery request.

public int TimeoutSeconds { get; set; }

int

FromConfiguration(IConfiguration, string)

Section titled “ FromConfiguration(IConfiguration, string)”

Binds HTTP invitation delivery options from configuration.

public static HttpInvitationDeliveryOptions FromConfiguration(IConfiguration configuration, string sectionPath = "Engine")

configuration IConfiguration

The application configuration root.

sectionPath string

The configuration section path that contains the engine settings. The default is Engine.

HttpInvitationDeliveryOptions

The bound HTTP invitation delivery options.