#### [Abblix\.SharedSignals](https://www.abblix.com/en/docs/api/abblix-sharedsignals 'index')
### [Abblix\.SharedSignals\.Model](https://www.abblix.com/en/docs/api/abblix-sharedsignals/Abblix.SharedSignals.Model 'Abblix\.SharedSignals\.Model')

## StreamConfiguration Class

An Event Stream's configuration: the document both sides contribute to and the transmitter
returns whole \(SSF 1\.0 Section 8\.1\.1\)\. Each member's doc says who supplies it, because that
decides who may change it \- a receiver's update carries the receiver\-supplied members, and a
transmitter\-supplied member it echoes back must match the expected value exactly, a mismatch
earning a 400; only a MISSING transmitter\-supplied member is ignored
\(SSF 1\.0 Sections 8\.1\.1\.3, 8\.1\.1\.4\)\.

```csharp
public sealed record StreamConfiguration : System.IEquatable<Abblix.SharedSignals.Model.StreamConfiguration>
```

Inheritance [System\.Object](https://learn.microsoft.com/en-us/dotnet/api/system.object 'System\.Object') → StreamConfiguration

Implements [System\.IEquatable&lt;](https://learn.microsoft.com/en-us/dotnet/api/system.iequatable-1 'System\.IEquatable\`1')[StreamConfiguration](https://www.abblix.com/en/docs/api/abblix-sharedsignals/Abblix.SharedSignals.Model.StreamConfiguration 'Abblix\.SharedSignals\.Model\.StreamConfiguration')[&gt;](https://learn.microsoft.com/en-us/dotnet/api/system.iequatable-1 'System\.IEquatable\`1')

### Remarks
The members SSF 1\.0 Section 8\.1\.1 marks REQUIRED are declared `required`: this type is
the full document a transmitter serializes and a receiver reads back as a client, so a copy
missing one of them is malformed in either direction\. The receiver\-supplied subset a create or
update request carries is a different, smaller shape and is not this type\.
### Properties

## StreamConfiguration\.Audiences Property {#Abblix.SharedSignals.Model.StreamConfiguration.Audiences}

Transmitter\-supplied, REQUIRED\. The audience identifying the stream's receiver\(s\), a
string or an array of strings as the JWT "aud" claim defines it; never updated after
creation \(SSF 1\.0 Section 8\.1\.1\)\. A single audience travels as a bare string, either form
reads back as the array\.

```csharp
public string[] Audiences { get; init; }
```

#### Property Value
[System\.String](https://learn.microsoft.com/en-us/dotnet/api/system.string 'System\.String')[\[\]](https://learn.microsoft.com/en-us/dotnet/api/system.array 'System\.Array')

## StreamConfiguration\.Delivery Property {#Abblix.SharedSignals.Model.StreamConfiguration.Delivery}

REQUIRED\. How SETs travel over this stream, dispatched on the "method" member
\(SSF 1\.0 Sections 8\.1\.1, 6\.1\)\. The one member both sides contribute to: the receiver
proposes it at creation, and for poll delivery the transmitter supplies the endpoint URL\.

```csharp
public Abblix.SharedSignals.Model.Delivery.StreamDeliveryMethod Delivery { get; init; }
```

#### Property Value
[StreamDeliveryMethod](https://www.abblix.com/en/docs/api/abblix-sharedsignals/Abblix.SharedSignals.Model.Delivery.StreamDeliveryMethod 'Abblix\.SharedSignals\.Model\.Delivery\.StreamDeliveryMethod')

## StreamConfiguration\.Description Property {#Abblix.SharedSignals.Model.StreamConfiguration.Description}

Receiver\-supplied, OPTIONAL\. A human\-readable description of the stream, useful in
multi\-stream systems; the transmitter may truncate it \(SSF 1\.0 Section 8\.1\.1\)\.

```csharp
public string? Description { get; init; }
```

#### Property Value
[System\.String](https://learn.microsoft.com/en-us/dotnet/api/system.string 'System\.String')

## StreamConfiguration\.EventsDelivered Property {#Abblix.SharedSignals.Model.StreamConfiguration.EventsDelivered}

Transmitter\-supplied, REQUIRED\. The event types the transmitter must include in the
stream: a subset of the intersection of the supported and requested sets, and the one
field a receiver relies on to know what to expect \(SSF 1\.0 Section 8\.1\.1\)\.

```csharp
public System.Collections.Generic.IReadOnlyList<string> EventsDelivered { get; init; }
```

#### Property Value
[System\.Collections\.Generic\.IReadOnlyList&lt;](https://learn.microsoft.com/en-us/dotnet/api/system.collections.generic.ireadonlylist-1 'System\.Collections\.Generic\.IReadOnlyList\`1')[System\.String](https://learn.microsoft.com/en-us/dotnet/api/system.string 'System\.String')[&gt;](https://learn.microsoft.com/en-us/dotnet/api/system.collections.generic.ireadonlylist-1 'System\.Collections\.Generic\.IReadOnlyList\`1')

## StreamConfiguration\.EventsRequested Property {#Abblix.SharedSignals.Model.StreamConfiguration.EventsRequested}

Receiver\-supplied, OPTIONAL\. The event types the receiver asked for \- only ones it
understands and can act on; the transmitter ignores values it does not understand
\(SSF 1\.0 Section 8\.1\.1\)\.

```csharp
public System.Collections.Generic.IReadOnlyList<string>? EventsRequested { get; init; }
```

#### Property Value
[System\.Collections\.Generic\.IReadOnlyList&lt;](https://learn.microsoft.com/en-us/dotnet/api/system.collections.generic.ireadonlylist-1 'System\.Collections\.Generic\.IReadOnlyList\`1')[System\.String](https://learn.microsoft.com/en-us/dotnet/api/system.string 'System\.String')[&gt;](https://learn.microsoft.com/en-us/dotnet/api/system.collections.generic.ireadonlylist-1 'System\.Collections\.Generic\.IReadOnlyList\`1')

## StreamConfiguration\.EventsSupported Property {#Abblix.SharedSignals.Model.StreamConfiguration.EventsSupported}

Transmitter\-supplied, OPTIONAL\. The event types the transmitter supports for this
receiver; absent means the set is published some other way, such as documentation
\(SSF 1\.0 Section 8\.1\.1\)\.

```csharp
public System.Collections.Generic.IReadOnlyList<string>? EventsSupported { get; init; }
```

#### Property Value
[System\.Collections\.Generic\.IReadOnlyList&lt;](https://learn.microsoft.com/en-us/dotnet/api/system.collections.generic.ireadonlylist-1 'System\.Collections\.Generic\.IReadOnlyList\`1')[System\.String](https://learn.microsoft.com/en-us/dotnet/api/system.string 'System\.String')[&gt;](https://learn.microsoft.com/en-us/dotnet/api/system.collections.generic.ireadonlylist-1 'System\.Collections\.Generic\.IReadOnlyList\`1')

## StreamConfiguration\.InactivityTimeout Property {#Abblix.SharedSignals.Model.StreamConfiguration.InactivityTimeout}

Transmitter\-supplied, OPTIONAL\. The stream's refreshable inactivity timeout, carried as
an integer number of seconds\. After it passes with no eligible receiver activity the
transmitter may pause, disable or delete the stream, announcing a pause or disable
through a Stream Updated Event \(SSF 1\.0 Section 8\.1\.1\)\.

```csharp
public System.Nullable<System.TimeSpan> InactivityTimeout { get; init; }
```

#### Property Value
[System\.Nullable&lt;](https://learn.microsoft.com/en-us/dotnet/api/system.nullable-1 'System\.Nullable\`1')[System\.TimeSpan](https://learn.microsoft.com/en-us/dotnet/api/system.timespan 'System\.TimeSpan')[&gt;](https://learn.microsoft.com/en-us/dotnet/api/system.nullable-1 'System\.Nullable\`1')

## StreamConfiguration\.Issuer Property {#Abblix.SharedSignals.Model.StreamConfiguration.Issuer}

Transmitter\-supplied, REQUIRED\. The transmitter's issuer identifier: an https URL with no
query or fragment, identical to the "iss" claim of every SET issued from this transmitter \-
and the value a receiver must confirm matches the issuer it discovered the transmitter
through \(SSF 1\.0 Sections 8\.1\.1, 8\.1\.1\.1\)\.

```csharp
public string Issuer { get; init; }
```

#### Property Value
[System\.String](https://learn.microsoft.com/en-us/dotnet/api/system.string 'System\.String')

## StreamConfiguration\.MinVerificationInterval Property {#Abblix.SharedSignals.Model.StreamConfiguration.MinVerificationInterval}

Transmitter\-supplied, OPTIONAL\. The minimum time between verification requests, carried
as an integer number of seconds; requesting more often may earn a 429
\(SSF 1\.0 Sections 8\.1\.1, 8\.1\.4\.2\)\.

```csharp
public System.Nullable<System.TimeSpan> MinVerificationInterval { get; init; }
```

#### Property Value
[System\.Nullable&lt;](https://learn.microsoft.com/en-us/dotnet/api/system.nullable-1 'System\.Nullable\`1')[System\.TimeSpan](https://learn.microsoft.com/en-us/dotnet/api/system.timespan 'System\.TimeSpan')[&gt;](https://learn.microsoft.com/en-us/dotnet/api/system.nullable-1 'System\.Nullable\`1')

## StreamConfiguration\.StreamId Property {#Abblix.SharedSignals.Model.StreamConfiguration.StreamId}

Transmitter\-supplied, REQUIRED\. The string that uniquely identifies the stream, generated
by the transmitter at stream creation \(SSF 1\.0 Section 8\.1\.1\)\.

```csharp
public string StreamId { get; init; }
```

#### Property Value
[System\.String](https://learn.microsoft.com/en-us/dotnet/api/system.string 'System\.String')
