Skip to content

SaladTechnologies/salad-client

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Go API client for saladclient

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

Overview

This API client was generated by the OpenAPI Generator project. By using the OpenAPI-spec from a remote server, you can easily generate an API client.

  • API version: 0.9.0-alpha.7
  • Package version: 1.0.0
  • Generator version: 7.11.0
  • Build package: org.openapitools.codegen.languages.GoClientCodegen For more information, please visit https://salad.com

Installation

Install the following dependencies:

go get github.com/stretchr/testify/assert
go get golang.org/x/net/context

Put the package under your project folder and add the following in import:

import saladclient "github.com/SaladTechnologies/salad-client"

To use a proxy, set the environment variable HTTP_PROXY:

os.Setenv("HTTP_PROXY", "http://proxy_name:proxy_port")

Configuration of Server URL

Default configuration comes with Servers field that contains server objects as defined in the OpenAPI specification.

Select Server Configuration

For using other server than the one defined on index 0 set context value saladclient.ContextServerIndex of type int.

ctx := context.WithValue(context.Background(), saladclient.ContextServerIndex, 1)

Templated Server URL

Templated server URL is formatted using default variables from configuration or from context value saladclient.ContextServerVariables of type map[string]string.

ctx := context.WithValue(context.Background(), saladclient.ContextServerVariables, map[string]string{
	"basePath": "v2",
})

Note, enum values are always validated and all unused variables are silently ignored.

URLs Configuration per Operation

Each operation can use different server URL defined using OperationServers map in the Configuration. An operation is uniquely identified by "{classname}Service.{nickname}" string. Similar rules for overriding default operation server index and variables applies by using saladclient.ContextOperationServerIndices and saladclient.ContextOperationServerVariables context maps.

ctx := context.WithValue(context.Background(), saladclient.ContextOperationServerIndices, map[string]int{
	"{classname}Service.{nickname}": 2,
})
ctx = context.WithValue(context.Background(), saladclient.ContextOperationServerVariables, map[string]map[string]string{
	"{classname}Service.{nickname}": {
		"port": "8443",
	},
})

Documentation for API Endpoints

All URIs are relative to https://api.salad.com/api/public

Class Method HTTP request Description
ContainerGroupsAPI CreateContainerGroup Post /organizations/{organization_name}/projects/{project_name}/containers Create Container Group
ContainerGroupsAPI DeleteContainerGroup Delete /organizations/{organization_name}/projects/{project_name}/containers/{container_group_name} Delete Container Group
ContainerGroupsAPI GetContainerGroup Get /organizations/{organization_name}/projects/{project_name}/containers/{container_group_name} Get Container Group
ContainerGroupsAPI GetContainerGroupInstance Get /organizations/{organization_name}/projects/{project_name}/containers/{container_group_name}/instances/{container_group_instance_id} Get Container Group Instance
ContainerGroupsAPI ListContainerGroupInstances Get /organizations/{organization_name}/projects/{project_name}/containers/{container_group_name}/instances List Container Group Instances
ContainerGroupsAPI ListContainerGroups Get /organizations/{organization_name}/projects/{project_name}/containers List Container Groups
ContainerGroupsAPI ReallocateContainerGroupInstance Post /organizations/{organization_name}/projects/{project_name}/containers/{container_group_name}/instances/{container_group_instance_id}/reallocate Reallocate Container Group Instance
ContainerGroupsAPI RecreateContainerGroupInstance Post /organizations/{organization_name}/projects/{project_name}/containers/{container_group_name}/instances/{container_group_instance_id}/recreate Recreate Container Group Instance
ContainerGroupsAPI RestartContainerGroupInstance Post /organizations/{organization_name}/projects/{project_name}/containers/{container_group_name}/instances/{container_group_instance_id}/restart Restart container Group Instance
ContainerGroupsAPI StartContainerGroup Post /organizations/{organization_name}/projects/{project_name}/containers/{container_group_name}/start Start Container Group
ContainerGroupsAPI StopContainerGroup Post /organizations/{organization_name}/projects/{project_name}/containers/{container_group_name}/stop Stop Container Group
ContainerGroupsAPI UpdateContainerGroup Patch /organizations/{organization_name}/projects/{project_name}/containers/{container_group_name} Update Container Group
InferenceEndpointsAPI CancelInferenceEndpointJob Delete /organizations/{organization_name}/inference-endpoints/{inference_endpoint_name}/jobs/{inference_endpoint_job_id} Cancel an Inference Endpoint Job
InferenceEndpointsAPI CreateInferenceEndpointJob Post /organizations/{organization_name}/inference-endpoints/{inference_endpoint_name}/jobs Create a New Inference Endpoint Job
InferenceEndpointsAPI GetInferenceEndpoint Get /organizations/{organization_name}/inference-endpoints/{inference_endpoint_name} Get an Inference Endpoint
InferenceEndpointsAPI GetInferenceEndpointJob Get /organizations/{organization_name}/inference-endpoints/{inference_endpoint_name}/jobs/{inference_endpoint_job_id} Get an Inference Endpoint Job
InferenceEndpointsAPI ListInferenceEndpointJobs Get /organizations/{organization_name}/inference-endpoints/{inference_endpoint_name}/jobs List Inference Endpoint Jobs
InferenceEndpointsAPI ListInferenceEndpoints Get /organizations/{organization_name}/inference-endpoints List Inference Endpoints
OrganizationDataAPI ListGpuClasses Get /organizations/{organization_name}/gpu-classes List the GPU Classes
QueuesAPI CreateQueue Post /organizations/{organization_name}/projects/{project_name}/queues Create Queue
QueuesAPI CreateQueueJob Post /organizations/{organization_name}/projects/{project_name}/queues/{queue_name}/jobs Create Job
QueuesAPI DeleteQueue Delete /organizations/{organization_name}/projects/{project_name}/queues/{queue_name} Delete Queue
QueuesAPI DeleteQueueJob Delete /organizations/{organization_name}/projects/{project_name}/queues/{queue_name}/jobs/{queue_job_id} Delete Job
QueuesAPI GetQueue Get /organizations/{organization_name}/projects/{project_name}/queues/{queue_name} Get Queue
QueuesAPI GetQueueJob Get /organizations/{organization_name}/projects/{project_name}/queues/{queue_name}/jobs/{queue_job_id} Get Job
QueuesAPI ListQueueJobs Get /organizations/{organization_name}/projects/{project_name}/queues/{queue_name}/jobs List Jobs
QueuesAPI ListQueues Get /organizations/{organization_name}/projects/{project_name}/queues List Queues
QueuesAPI UpdateQueue Patch /organizations/{organization_name}/projects/{project_name}/queues/{queue_name} Update Queue
QuotasAPI GetQuotas Get /organizations/{organization_name}/quotas Get Quotas
SystemLogsAPI GetSystemLogs Get /organizations/{organization_name}/projects/{project_name}/containers/{container_group_name}/system-logs Get System Logs
WebhookSecretKeyAPI GetWebhookSecretKey Get /organizations/{organization_name}/webhook-secret-key Gets the webhook secret key
WebhookSecretKeyAPI UpdateWebhookSecretKey Post /organizations/{organization_name}/webhook-secret-key Updates the webhook secret key
WorkloadErrorsAPI GetWorkloadErrors Get /organizations/{organization_name}/projects/{project_name}/containers/{container_group_name}/errors Get Workload Errors

Documentation For Models

Documentation For Authorization

Authentication schemes defined for the API:

ApiKeyAuth

  • Type: API key
  • API key parameter name: Salad-Api-Key
  • Location: HTTP header

Note, each API key must be added to a map of map[string]APIKey where the key is: ApiKeyAuth and passed in as the auth context for each request.

Example

auth := context.WithValue(
		context.Background(),
		saladclient.ContextAPIKeys,
		map[string]saladclient.APIKey{
			"ApiKeyAuth": {Key: "API_KEY_STRING"},
		},
	)
r, err := client.Service.Operation(auth, args)

Documentation for Utility Methods

Due to the fact that model structure members are all pointers, this package contains a number of utility functions to easily obtain pointers to values of basic types. Each of these functions takes a value of the given basic type and returns a pointer to it:

  • PtrBool
  • PtrInt
  • PtrInt32
  • PtrInt64
  • PtrFloat
  • PtrFloat32
  • PtrFloat64
  • PtrString
  • PtrTime

Author

[email protected]

About

Salad client generated by openai

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Shell 100.0%