Skip to content

SaladTechnologies/salad-cloud-sdk-dotnet

Repository files navigation

SaladCloudSdk C# SDK 0.9.0-alpha.5

Welcome to the SaladCloudSdk SDK documentation. This guide will help you get started with integrating and using the SaladCloudSdk SDK in your project.

Versions

  • API version: 0.9.0-alpha.5
  • SDK version: 0.9.0-alpha.5

About the API

The SaladCloud REST API. Please refer to the SaladCloud API Documentation for more details.

Table of Contents

Setup & Configuration

Supported Language Versions

This SDK is compatible with the following versions: C# >= .NET 6

Installation

To get started with the SDK, we recommend installing using nuget:

dotnet add package Salad.Cloud.SDK

Authentication

API Key Authentication

The SaladCloudSdk API uses API keys as a form of authentication. An API key is a unique identifier used to authenticate a user, developer, or a program that is calling the API.

Setting the API key

When you initialize the SDK, you can set the API key as follows:

using Salad.Cloud.SDK;
using Salad.Cloud.SDK.Config;

var config = new Salad.Cloud.SDKConfig()
{
	ApiKeyAuth = new ApiKeyAuthConfig("YOUR_API_KEY")
};

var client = new SaladCloudSdkClient(config);

If you need to set or update the API key after initializing the SDK, you can use:

client.SetApiKey("YOUR_API_KEY")

Sample Usage

Below is a comprehensive example demonstrating how to authenticate and call a simple endpoint:

using Salad.Cloud.SDK;
using Salad.Cloud.SDK.Config;
using Environment = Salad.Cloud.SDK.Http.Environment;

var apiKeyConfig = new ApiKeyAuthConfig("YOUR_API_KEY");

var config = new SaladCloudSdkConfig
{
  Environment = Environment.Default,
ApiKeyAuth = apiKeyConfig
};

var client = new SaladCloudSdkClient(config);

var response = await client.Quotas.GetQuotasAsync("oecson4k2eclxr");

Console.WriteLine(response);

Services

The SDK provides various services to interact with the API.

Below is a list of all available services with links to their detailed documentation:
Name
ContainerGroupsService
WorkloadErrorsService
QueuesService
QuotasService
InferenceEndpointsService
OrganizationDataService
WebhookSecretKeyService

Models

The SDK includes several models that represent the data structures used in API requests and responses. These models help in organizing and managing the data efficiently.

Below is a list of all available models with links to their detailed documentation:
Name Description
ContainerGroupList Represents a list of container groups
CreateContainerGroup Represents a request to create a container group
ContainerGroup Represents a container group
UpdateContainerGroup Represents a request to update a container group
ContainerGroupInstances Represents a list of container group instances
ContainerGroupInstance Represents the details of a single container group instance
WorkloadErrorList Represents a list of workload errors
QueueList Represents a list of queues
CreateQueue Represents a request to create a new queue.
Queue Represents a queue.
UpdateQueue Represents a request to update an existing queue.
QueueJobList Represents a list of queue jobs
CreateQueueJob Represents a request to create a queue job
QueueJob Represents a queue job
Quotas Represents the organization quotas
InferenceEndpointsList Represents a list of inference endpoints
InferenceEndpoint Represents an inference endpoint
InferenceEndpointJobList Represents a list of inference endpoint jobs
CreateInferenceEndpointJob Represents a request to create a inference endpoint job
InferenceEndpointJob Represents a inference endpoint job
GpuClassesList Represents a list of GPU classes
WebhookSecretKey Represents a webhook secret key
Container Represents a container
ContainerRestartPolicy
ContainerGroupState Represents a container group state
CountryCode
ContainerGroupNetworking Represents container group networking parameters
ContainerGroupLivenessProbe Represents the container group liveness probe
ContainerGroupReadinessProbe Represents the container group readiness probe
ContainerGroupStartupProbe Represents the container group startup probe
ContainerGroupQueueConnection Represents container group queue connection
QueueAutoscaler Represents the autoscaling rules for a queue
ContainerResourceRequirements Represents a container resource requirements
ContainerGroupPriority
ContainerGroupStatus
ContainerGroupInstanceStatusCount Represents a container group instance status count
ContainerNetworkingProtocol
ContainerGroupProbeTcp
ContainerGroupProbeHttp
ContainerGroupProbeGrpc
ContainerGroupProbeExec
ContainerProbeHttpScheme
ContainerGroupProbeHttpHeaders2
CreateContainer Represents a container
CreateContainerGroupNetworking Represents container group networking parameters
UpdateContainer Represents an update container object
UpdateContainerGroupNetworking Represents update container group networking parameters
WorkloadError Represents a workload error
QueueJobEvent Represents an event for queue job
ContainerGroupsQuotas
InferenceEndpointJobEvent Represents an event for inference endpoint job
GpuClass Represents a GPU Class
GpuClassPrice Represents the price of a GPU class for a given container group priority

License

This SDK is licensed under the MIT License.

See the LICENSE file for more details.