Table of Contents

Class Provider

Namespace
Openshell.Datamodel.V1
Assembly
OpenShell.Sdk.dll

Provider model stored by OpenShell.

public sealed class Provider : IMessage<Provider>, IEquatable<Provider>, IDeepCloneable<Provider>, IBufferMessage, IMessage
Inheritance
Provider
Implements
IMessage<Provider>
IDeepCloneable<Provider>
IBufferMessage
IMessage
Inherited Members

Constructors

Provider()

public Provider()

Provider(Provider)

public Provider(Provider other)

Parameters

other Provider

Fields

ConfigFieldNumber

Field number for the "config" field.

public const int ConfigFieldNumber = 4

Field Value

int

CredentialExpirationTimesFieldNumber

Field number for the "credential_expiration_times" field.

public const int CredentialExpirationTimesFieldNumber = 105

Field Value

int

CredentialHandlesFieldNumber

Field number for the "credential_handles" field.

public const int CredentialHandlesFieldNumber = 7

Field Value

int

CredentialsFieldNumber

Field number for the "credentials" field.

public const int CredentialsFieldNumber = 3

Field Value

int

MetadataFieldNumber

Field number for the "metadata" field.

public const int MetadataFieldNumber = 1

Field Value

int

ProfileWorkspaceFieldNumber

Field number for the "profile_workspace" field.

public const int ProfileWorkspaceFieldNumber = 6

Field Value

int

TypeFieldNumber

Field number for the "type" field.

public const int TypeFieldNumber = 2

Field Value

int

Properties

Config

Non-secret provider configuration.

public MapField<string, string> Config { get; }

Property Value

MapField<string, string>

CredentialExpirationTimes

Expiration times for credential values, keyed by credential/env var name. A missing key means the credential does not expire.

public MapField<string, Timestamp> CredentialExpirationTimes { get; }

Property Value

MapField<string, Timestamp>

CredentialHandles

Opaque handles for secret values stored through gateway credential storage. This map is internal gateway state and is not accepted as user-authored input.

public MapField<string, CredentialHandle> CredentialHandles { get; }

Property Value

MapField<string, CredentialHandle>

Credentials

Secret values used for authentication.

public MapField<string, string> Credentials { get; }

Property Value

MapField<string, string>

Descriptor

public static MessageDescriptor Descriptor { get; }

Property Value

MessageDescriptor

Metadata

Kubernetes-style metadata (id, name, labels, timestamps, resource version).

public ObjectMeta Metadata { get; set; }

Property Value

ObjectMeta

Parser

public static MessageParser<Provider> Parser { get; }

Property Value

MessageParser<Provider>

ProfileWorkspace

Workspace where this provider's type profile is stored. Empty string = platform/global scope. Must be empty or match metadata.workspace; cross-workspace references are rejected.

public string ProfileWorkspace { get; set; }

Property Value

string

Type

ID of the provider profile this provider was created from, matched exactly (for example: "claude-code", "github").

public string Type { get; set; }

Property Value

string

Methods

CalculateSize()

Calculates the size of this message in Protocol Buffer wire format, in bytes.

public int CalculateSize()

Returns

int

The number of bytes required to write this message to a coded output stream.

Clone()

Creates a deep clone of this object.

public Provider Clone()

Returns

Provider

A deep clone of this object.

Equals(Provider)

Indicates whether the current object is equal to another object of the same type.

public bool Equals(Provider other)

Parameters

other Provider

An object to compare with this object.

Returns

bool

true if the current object is equal to the other parameter; otherwise, false.

Equals(object)

Determines whether the specified object is equal to the current object.

public override bool Equals(object other)

Parameters

other object

Returns

bool

true if the specified object is equal to the current object; otherwise, false.

GetHashCode()

Serves as the default hash function.

public override int GetHashCode()

Returns

int

A hash code for the current object.

MergeFrom(CodedInputStream)

Merges the data from the specified coded input stream with the current message.

public void MergeFrom(CodedInputStream input)

Parameters

input CodedInputStream

Remarks

See the user guide for precise merge semantics.

MergeFrom(Provider)

Merges the given message into this one.

public void MergeFrom(Provider other)

Parameters

other Provider

Remarks

See the user guide for precise merge semantics.

ToString()

Returns a string that represents the current object.

public override string ToString()

Returns

string

A string that represents the current object.

WriteTo(CodedOutputStream)

Writes the data to the given coded output stream.

public void WriteTo(CodedOutputStream output)

Parameters

output CodedOutputStream

Coded output stream to write the data to. Must not be null.