diff --git a/README.md b/README.md index 402b8ad..35de1f4 100644 --- a/README.md +++ b/README.md @@ -54,11 +54,11 @@ func main() { ### Documentation The Leaseweb Go SDK documentation based on product: -- [Public Cloud](publiccloud/docs/PubliccloudAPI.md) -- [Dedicated Server](dedicatedserver/docs/DedicatedserverAPI.md) -- [Aggregation Pack](aggregationpack/docs/AggregationpackAPI.md) -- [Abuse](abuse/docs/AbuseAPI.md) -- [Invoice](invoice/docs/InvoiceAPI.md) +- [Public Cloud](publiccloud/README.md) +- [Dedicated Server](dedicatedserver/README.md) +- [Aggregation Pack](aggregationpack/README.md) +- [Abuse](abuse/README.md) +- [Invoice](invoice/README.md) ### Issues If you encounter an issue with the project, you are welcome to submit an [issue](https://github.com/Leaseweb/leaseweb-go-sdk/issues). diff --git a/abuse/README.md b/abuse/README.md index 9f20f81..b84a509 100644 --- a/abuse/README.md +++ b/abuse/README.md @@ -8,7 +8,7 @@ This API client was generated by the [OpenAPI Generator](https://openapi-generat - API version: v1 - Package version: 1.0.0 -- Generator version: 7.4.0 +- Generator version: 7.10.0 - Build package: org.openapitools.codegen.languages.GoClientCodegen ## Installation diff --git a/aggregationpack/README.md b/aggregationpack/README.md new file mode 100644 index 0000000..e8d7919 --- /dev/null +++ b/aggregationpack/README.md @@ -0,0 +1,152 @@ +# Go API client for aggregationpack + +This documents the rest api aggregation packs provides. + +## Overview +This API client was generated by the [OpenAPI Generator](https://openapi-generator.tech) project. By using the [OpenAPI-spec](https://www.openapis.org/) from a remote server, you can easily generate an API client. + +- API version: v2 +- Package version: 1.0.0 +- Generator version: 7.10.0 +- Build package: org.openapitools.codegen.languages.GoClientCodegen + +## Installation + +Install the following dependencies: + +```sh +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: + +```go +import aggregationpack "github.com/leaseweb/leaseweb-go-sdk/aggregationpack" +``` + +To use a proxy, set the environment variable `HTTP_PROXY`: + +```go +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 `aggregationpack.ContextServerIndex` of type `int`. + +```go +ctx := context.WithValue(context.Background(), aggregationpack.ContextServerIndex, 1) +``` + +### Templated Server URL + +Templated server URL is formatted using default variables from configuration or from context value `aggregationpack.ContextServerVariables` of type `map[string]string`. + +```go +ctx := context.WithValue(context.Background(), aggregationpack.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 `aggregationpack.ContextOperationServerIndices` and `aggregationpack.ContextOperationServerVariables` context maps. + +```go +ctx := context.WithValue(context.Background(), aggregationpack.ContextOperationServerIndices, map[string]int{ + "{classname}Service.{nickname}": 2, +}) +ctx = context.WithValue(context.Background(), aggregationpack.ContextOperationServerVariables, map[string]map[string]string{ + "{classname}Service.{nickname}": { + "port": "8443", + }, +}) +``` + +## Documentation for API Endpoints + +All URIs are relative to *https://api.leaseweb.com/bareMetals/v2* + +Class | Method | HTTP request | Description +------------ | ------------- | ------------- | ------------- +*AggregationpackAPI* | [**GetAggregationPack**](docs/AggregationpackAPI.md#getaggregationpack) | **Get** /aggregationPacks/{aggregationPackId} | Get aggregation pack +*AggregationpackAPI* | [**GetAggregationPackList**](docs/AggregationpackAPI.md#getaggregationpacklist) | **Get** /aggregationPacks | List aggregation packs + + +## Documentation For Models + + - [AggregationPack](docs/AggregationPack.md) + - [AggregationType](docs/AggregationType.md) + - [DataTrafficCommitUnit](docs/DataTrafficCommitUnit.md) + - [ErrorResult](docs/ErrorResult.md) + - [GetAggregationPackListResult](docs/GetAggregationPackListResult.md) + - [Metadata](docs/Metadata.md) + - [NetworkPerformanceType](docs/NetworkPerformanceType.md) + + +## Documentation For Authorization + + +Authentication schemes defined for the API: +### BearerAuth + +- **Type**: HTTP Bearer token authentication + +Example + +```go +auth := context.WithValue(context.Background(), aggregationpack.ContextAccessToken, "BEARER_TOKEN_STRING") +r, err := client.Service.Operation(auth, args) +``` + +### X-LSW-Auth + +- **Type**: API key +- **API key parameter name**: X-LSW-Auth +- **Location**: HTTP header + +Note, each API key must be added to a map of `map[string]APIKey` where the key is: X-LSW-Auth and passed in as the auth context for each request. + +Example + +```go +auth := context.WithValue( + context.Background(), + aggregationpack.ContextAPIKeys, + map[string]aggregationpack.APIKey{ + "X-LSW-Auth": {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 + + + diff --git a/dedicatedserver/README.md b/dedicatedserver/README.md new file mode 100644 index 0000000..672e066 --- /dev/null +++ b/dedicatedserver/README.md @@ -0,0 +1,345 @@ +# Go API client for dedicatedserver + +This documents the rest api dedicatedserver provides. + +## Overview +This API client was generated by the [OpenAPI Generator](https://openapi-generator.tech) project. By using the [OpenAPI-spec](https://www.openapis.org/) from a remote server, you can easily generate an API client. + +- API version: v2 +- Package version: 1.0.0 +- Generator version: 7.10.0 +- Build package: org.openapitools.codegen.languages.GoClientCodegen + +## Installation + +Install the following dependencies: + +```sh +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: + +```go +import dedicatedserver "github.com/leaseweb/leaseweb-go-sdk/dedicatedserver" +``` + +To use a proxy, set the environment variable `HTTP_PROXY`: + +```go +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 `dedicatedserver.ContextServerIndex` of type `int`. + +```go +ctx := context.WithValue(context.Background(), dedicatedserver.ContextServerIndex, 1) +``` + +### Templated Server URL + +Templated server URL is formatted using default variables from configuration or from context value `dedicatedserver.ContextServerVariables` of type `map[string]string`. + +```go +ctx := context.WithValue(context.Background(), dedicatedserver.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 `dedicatedserver.ContextOperationServerIndices` and `dedicatedserver.ContextOperationServerVariables` context maps. + +```go +ctx := context.WithValue(context.Background(), dedicatedserver.ContextOperationServerIndices, map[string]int{ + "{classname}Service.{nickname}": 2, +}) +ctx = context.WithValue(context.Background(), dedicatedserver.ContextOperationServerVariables, map[string]map[string]string{ + "{classname}Service.{nickname}": { + "port": "8443", + }, +}) +``` + +## Documentation for API Endpoints + +All URIs are relative to *https://api.leaseweb.com/bareMetals/v2* + +Class | Method | HTTP request | Description +------------ | ------------- | ------------- | ------------- +*DedicatedserverAPI* | [**AddServerToPrivateNetwork**](docs/DedicatedserverAPI.md#addservertoprivatenetwork) | **Put** /servers/{serverId}/privateNetworks/{privateNetworkId} | Add a server to private network +*DedicatedserverAPI* | [**CancelActiveJob**](docs/DedicatedserverAPI.md#cancelactivejob) | **Post** /servers/{serverId}/cancelActiveJob | Cancel active job +*DedicatedserverAPI* | [**CloseNetworkInterface**](docs/DedicatedserverAPI.md#closenetworkinterface) | **Post** /servers/{serverId}/networkInterfaces/{networkTypeURL}/close | Close network interface +*DedicatedserverAPI* | [**CloseNetworkInterfaces**](docs/DedicatedserverAPI.md#closenetworkinterfaces) | **Post** /servers/{serverId}/networkInterfaces/close | Close all network interfaces +*DedicatedserverAPI* | [**CreateNetworkEquipmentCredential**](docs/DedicatedserverAPI.md#createnetworkequipmentcredential) | **Post** /networkEquipments/{networkEquipmentId}/credentials | Create new network equipment credentials +*DedicatedserverAPI* | [**CreateServerBandwidthNotificationSetting**](docs/DedicatedserverAPI.md#createserverbandwidthnotificationsetting) | **Post** /servers/{serverId}/notificationSettings/bandwidth | Create a bandwidth notification setting +*DedicatedserverAPI* | [**CreateServerCredential**](docs/DedicatedserverAPI.md#createservercredential) | **Post** /servers/{serverId}/credentials | Create new server credentials +*DedicatedserverAPI* | [**CreateServerDataTrafficNotificationSetting**](docs/DedicatedserverAPI.md#createserverdatatrafficnotificationsetting) | **Post** /servers/{serverId}/notificationSettings/datatraffic | Create a data traffic notification setting +*DedicatedserverAPI* | [**CreateServerDhcpReservation**](docs/DedicatedserverAPI.md#createserverdhcpreservation) | **Post** /servers/{serverId}/leases | Create a DHCP reservation +*DedicatedserverAPI* | [**DeleteNetworkEquipmentCredential**](docs/DedicatedserverAPI.md#deletenetworkequipmentcredential) | **Delete** /networkEquipments/{networkEquipmentId}/credentials/{type}/{username} | Delete network equipment credentials +*DedicatedserverAPI* | [**DeleteServerBandwidthNotificationSetting**](docs/DedicatedserverAPI.md#deleteserverbandwidthnotificationsetting) | **Delete** /servers/{serverId}/notificationSettings/bandwidth/{notificationSettingId} | Delete a bandwidth notification setting +*DedicatedserverAPI* | [**DeleteServerCredential**](docs/DedicatedserverAPI.md#deleteservercredential) | **Delete** /servers/{serverId}/credentials/{type}/{username} | Delete server credentials +*DedicatedserverAPI* | [**DeleteServerDataTrafficNotificationSetting**](docs/DedicatedserverAPI.md#deleteserverdatatrafficnotificationsetting) | **Delete** /servers/{serverId}/notificationSettings/datatraffic/{notificationSettingId} | Delete a data traffic notification setting +*DedicatedserverAPI* | [**DeleteServerDhcpReservation**](docs/DedicatedserverAPI.md#deleteserverdhcpreservation) | **Delete** /servers/{serverId}/leases | Delete a DHCP reservation +*DedicatedserverAPI* | [**DeleteServerFromPrivateNetwork**](docs/DedicatedserverAPI.md#deleteserverfromprivatenetwork) | **Delete** /servers/{serverId}/privateNetworks/{privateNetworkId} | Delete a server from a private network +*DedicatedserverAPI* | [**EnableServerRescueMode**](docs/DedicatedserverAPI.md#enableserverrescuemode) | **Post** /servers/{serverId}/rescueMode | Launch rescue mode +*DedicatedserverAPI* | [**ExpireActiveJob**](docs/DedicatedserverAPI.md#expireactivejob) | **Post** /servers/{serverId}/expireActiveJob | Expire active job +*DedicatedserverAPI* | [**GetControlPanelList**](docs/DedicatedserverAPI.md#getcontrolpanellist) | **Get** /controlPanels | List control panels +*DedicatedserverAPI* | [**GetControlPanelListByOperatingSystemId**](docs/DedicatedserverAPI.md#getcontrolpanellistbyoperatingsystemid) | **Get** /operatingSystems/{operatingSystemId}/controlPanels | List control panels by Operating System +*DedicatedserverAPI* | [**GetDdosNotificationSetting**](docs/DedicatedserverAPI.md#getddosnotificationsetting) | **Get** /servers/{serverId}/notificationSettings/ddos | Inspect DDoS notification settings +*DedicatedserverAPI* | [**GetNetworkEquipment**](docs/DedicatedserverAPI.md#getnetworkequipment) | **Get** /networkEquipments/{networkEquipmentId} | Get network equipment +*DedicatedserverAPI* | [**GetNetworkEquipmentCredential**](docs/DedicatedserverAPI.md#getnetworkequipmentcredential) | **Get** /networkEquipments/{networkEquipmentId}/credentials/{type}/{username} | Show network equipment credentials +*DedicatedserverAPI* | [**GetNetworkEquipmentCredentialList**](docs/DedicatedserverAPI.md#getnetworkequipmentcredentiallist) | **Get** /networkEquipments/{networkEquipmentId}/credentials | List network equipment credentials +*DedicatedserverAPI* | [**GetNetworkEquipmentCredentialListByType**](docs/DedicatedserverAPI.md#getnetworkequipmentcredentiallistbytype) | **Get** /networkEquipments/{networkEquipmentId}/credentials/{type} | List network equipment credentials by type +*DedicatedserverAPI* | [**GetNetworkEquipmentIp**](docs/DedicatedserverAPI.md#getnetworkequipmentip) | **Get** /networkEquipments/{networkEquipmentId}/ips/{ip} | Show a network equipment IP +*DedicatedserverAPI* | [**GetNetworkEquipmentIpList**](docs/DedicatedserverAPI.md#getnetworkequipmentiplist) | **Get** /networkEquipments/{networkEquipmentId}/ips | List IPs +*DedicatedserverAPI* | [**GetNetworkEquipmentList**](docs/DedicatedserverAPI.md#getnetworkequipmentlist) | **Get** /networkEquipments | List network equipment +*DedicatedserverAPI* | [**GetNetworkEquipmentNullRouteHistory**](docs/DedicatedserverAPI.md#getnetworkequipmentnullroutehistory) | **Get** /networkEquipments/{networkEquipmentId}/nullRouteHistory | Show null route history +*DedicatedserverAPI* | [**GetNetworkEquipmentPowerStatus**](docs/DedicatedserverAPI.md#getnetworkequipmentpowerstatus) | **Get** /networkEquipments/{networkEquipmentId}/powerInfo | Show power status +*DedicatedserverAPI* | [**GetNetworkInterface**](docs/DedicatedserverAPI.md#getnetworkinterface) | **Get** /servers/{serverId}/networkInterfaces/{networkTypeURL} | Show a network interface +*DedicatedserverAPI* | [**GetNetworkInterfaceList**](docs/DedicatedserverAPI.md#getnetworkinterfacelist) | **Get** /servers/{serverId}/networkInterfaces | List network interfaces +*DedicatedserverAPI* | [**GetOperatingSystem**](docs/DedicatedserverAPI.md#getoperatingsystem) | **Get** /operatingSystems/{operatingSystemId} | Show an operating system +*DedicatedserverAPI* | [**GetOperatingSystemList**](docs/DedicatedserverAPI.md#getoperatingsystemlist) | **Get** /operatingSystems | List Operating Systems +*DedicatedserverAPI* | [**GetRescueImageList**](docs/DedicatedserverAPI.md#getrescueimagelist) | **Get** /rescueImages | Rescue Images +*DedicatedserverAPI* | [**GetServer**](docs/DedicatedserverAPI.md#getserver) | **Get** /servers/{serverId} | Get server +*DedicatedserverAPI* | [**GetServerBandwidthMetrics**](docs/DedicatedserverAPI.md#getserverbandwidthmetrics) | **Get** /servers/{serverId}/metrics/bandwidth | Show bandwidth metrics +*DedicatedserverAPI* | [**GetServerBandwidthNotificationSetting**](docs/DedicatedserverAPI.md#getserverbandwidthnotificationsetting) | **Get** /servers/{serverId}/notificationSettings/bandwidth/{notificationSettingId} | Show a bandwidth notification setting +*DedicatedserverAPI* | [**GetServerBandwidthNotificationSettingList**](docs/DedicatedserverAPI.md#getserverbandwidthnotificationsettinglist) | **Get** /servers/{serverId}/notificationSettings/bandwidth | List bandwidth notification settings +*DedicatedserverAPI* | [**GetServerCredential**](docs/DedicatedserverAPI.md#getservercredential) | **Get** /servers/{serverId}/credentials/{type}/{username} | Show server credentials +*DedicatedserverAPI* | [**GetServerCredentialList**](docs/DedicatedserverAPI.md#getservercredentiallist) | **Get** /servers/{serverId}/credentials | List server credentials +*DedicatedserverAPI* | [**GetServerCredentialListByType**](docs/DedicatedserverAPI.md#getservercredentiallistbytype) | **Get** /servers/{serverId}/credentials/{type} | List server credentials by type +*DedicatedserverAPI* | [**GetServerDataTrafficMetrics**](docs/DedicatedserverAPI.md#getserverdatatrafficmetrics) | **Get** /servers/{serverId}/metrics/datatraffic | Show datatraffic metrics +*DedicatedserverAPI* | [**GetServerDataTrafficNotificationSetting**](docs/DedicatedserverAPI.md#getserverdatatrafficnotificationsetting) | **Get** /servers/{serverId}/notificationSettings/datatraffic/{notificationSettingId} | Show a data traffic notification setting +*DedicatedserverAPI* | [**GetServerDataTrafficNotificationSettingList**](docs/DedicatedserverAPI.md#getserverdatatrafficnotificationsettinglist) | **Get** /servers/{serverId}/notificationSettings/datatraffic | List data traffic notification settings +*DedicatedserverAPI* | [**GetServerDhcpReservationList**](docs/DedicatedserverAPI.md#getserverdhcpreservationlist) | **Get** /servers/{serverId}/leases | List DHCP reservations +*DedicatedserverAPI* | [**GetServerHardware**](docs/DedicatedserverAPI.md#getserverhardware) | **Get** /servers/{serverId}/hardwareInfo | Show hardware information +*DedicatedserverAPI* | [**GetServerIp**](docs/DedicatedserverAPI.md#getserverip) | **Get** /servers/{serverId}/ips/{ip} | Show a server IP +*DedicatedserverAPI* | [**GetServerIpList**](docs/DedicatedserverAPI.md#getserveriplist) | **Get** /servers/{serverId}/ips | List IPs +*DedicatedserverAPI* | [**GetServerJob**](docs/DedicatedserverAPI.md#getserverjob) | **Get** /servers/{serverId}/jobs/{jobId} | Show a job +*DedicatedserverAPI* | [**GetServerJobList**](docs/DedicatedserverAPI.md#getserverjoblist) | **Get** /servers/{serverId}/jobs | List jobs +*DedicatedserverAPI* | [**GetServerList**](docs/DedicatedserverAPI.md#getserverlist) | **Get** /servers | List servers +*DedicatedserverAPI* | [**GetServerNullRouteHistory**](docs/DedicatedserverAPI.md#getservernullroutehistory) | **Get** /servers/{serverId}/nullRouteHistory | Show null route history +*DedicatedserverAPI* | [**GetServerPowerStatus**](docs/DedicatedserverAPI.md#getserverpowerstatus) | **Get** /servers/{serverId}/powerInfo | Show power status +*DedicatedserverAPI* | [**InstallOperatingSystem**](docs/DedicatedserverAPI.md#installoperatingsystem) | **Post** /servers/{serverId}/install | Launch installation +*DedicatedserverAPI* | [**IpmiResetServer**](docs/DedicatedserverAPI.md#ipmiresetserver) | **Post** /servers/{serverId}/ipmiReset | Launch IPMI reset +*DedicatedserverAPI* | [**NullIpRoute**](docs/DedicatedserverAPI.md#nulliproute) | **Post** /servers/{serverId}/ips/{ip}/null | Null route an IP +*DedicatedserverAPI* | [**NullNetworkEquipmentIpRoute**](docs/DedicatedserverAPI.md#nullnetworkequipmentiproute) | **Post** /networkEquipments/{networkEquipmentId}/ips/{ip}/null | Null route an IP +*DedicatedserverAPI* | [**OpenNetworkInterface**](docs/DedicatedserverAPI.md#opennetworkinterface) | **Post** /servers/{serverId}/networkInterfaces/{networkTypeURL}/open | Open network interface +*DedicatedserverAPI* | [**OpenNetworkInterfaces**](docs/DedicatedserverAPI.md#opennetworkinterfaces) | **Post** /servers/{serverId}/networkInterfaces/open | Open all network interfaces +*DedicatedserverAPI* | [**PowerCycleNetworkEquipment**](docs/DedicatedserverAPI.md#powercyclenetworkequipment) | **Post** /networkEquipments/{networkEquipmentId}/powerCycle | Power cycle a network equipment +*DedicatedserverAPI* | [**PowerCycleServer**](docs/DedicatedserverAPI.md#powercycleserver) | **Post** /servers/{serverId}/powerCycle | Power cycle a server +*DedicatedserverAPI* | [**PowerNetworkEquipmentOff**](docs/DedicatedserverAPI.md#powernetworkequipmentoff) | **Post** /networkEquipments/{networkEquipmentId}/powerOff | Power off network equipment +*DedicatedserverAPI* | [**PowerNetworkEquipmentOn**](docs/DedicatedserverAPI.md#powernetworkequipmenton) | **Post** /networkEquipments/{networkEquipmentId}/powerOn | Power on network equipment +*DedicatedserverAPI* | [**PowerServerOff**](docs/DedicatedserverAPI.md#powerserveroff) | **Post** /servers/{serverId}/powerOff | Power off server +*DedicatedserverAPI* | [**PowerServerOn**](docs/DedicatedserverAPI.md#powerserveron) | **Post** /servers/{serverId}/powerOn | Power on server +*DedicatedserverAPI* | [**RemoveNullIpRoute**](docs/DedicatedserverAPI.md#removenulliproute) | **Post** /servers/{serverId}/ips/{ip}/unnull | Remove a null route +*DedicatedserverAPI* | [**RetryServerJob**](docs/DedicatedserverAPI.md#retryserverjob) | **Post** /servers/{serverId}/jobs/{jobId}/retry | Retry a job +*DedicatedserverAPI* | [**ScanHardware**](docs/DedicatedserverAPI.md#scanhardware) | **Post** /servers/{serverId}/hardwareScan | Launch hardware scan +*DedicatedserverAPI* | [**UnNullNetworkEquipmentIpRoute**](docs/DedicatedserverAPI.md#unnullnetworkequipmentiproute) | **Post** /networkEquipments/{networkEquipmentId}/ips/{ip}/unnull | Remove a null route +*DedicatedserverAPI* | [**UpdateDdosNotificationSetting**](docs/DedicatedserverAPI.md#updateddosnotificationsetting) | **Put** /servers/{serverId}/notificationSettings/ddos | Update DDoS notification settings +*DedicatedserverAPI* | [**UpdateIpProfile**](docs/DedicatedserverAPI.md#updateipprofile) | **Put** /servers/{serverId}/ips/{ip} | Update an IP +*DedicatedserverAPI* | [**UpdateNetworkEquipmentCredential**](docs/DedicatedserverAPI.md#updatenetworkequipmentcredential) | **Put** /networkEquipments/{networkEquipmentId}/credentials/{type}/{username} | Update network equipment credentials +*DedicatedserverAPI* | [**UpdateNetworkEquipmentIp**](docs/DedicatedserverAPI.md#updatenetworkequipmentip) | **Put** /networkEquipments/{networkEquipmentId}/ips/{ip} | Update an IP +*DedicatedserverAPI* | [**UpdateNetworkEquipmentReference**](docs/DedicatedserverAPI.md#updatenetworkequipmentreference) | **Put** /networkEquipments/{networkEquipmentId} | Update network equipment +*DedicatedserverAPI* | [**UpdateServerBandwidthNotificationSetting**](docs/DedicatedserverAPI.md#updateserverbandwidthnotificationsetting) | **Put** /servers/{serverId}/notificationSettings/bandwidth/{notificationSettingId} | Update a bandwidth notification setting +*DedicatedserverAPI* | [**UpdateServerCredential**](docs/DedicatedserverAPI.md#updateservercredential) | **Put** /servers/{serverId}/credentials/{type}/{username} | Update server credentials +*DedicatedserverAPI* | [**UpdateServerDataTrafficNotificationSetting**](docs/DedicatedserverAPI.md#updateserverdatatrafficnotificationsetting) | **Put** /servers/{serverId}/notificationSettings/datatraffic/{notificationSettingId} | Update a data traffic notification setting +*DedicatedserverAPI* | [**UpdateServerReference**](docs/DedicatedserverAPI.md#updateserverreference) | **Put** /servers/{serverId} | Update server + + +## Documentation For Models + + - [Actions](docs/Actions.md) + - [AddServerToPrivateNetworkOpts](docs/AddServerToPrivateNetworkOpts.md) + - [Attribute](docs/Attribute.md) + - [Attributes](docs/Attributes.md) + - [AutoNegotiation](docs/AutoNegotiation.md) + - [BandwidthNotificationSetting](docs/BandwidthNotificationSetting.md) + - [BandwidthNotificationSettingOpts](docs/BandwidthNotificationSettingOpts.md) + - [Chassis](docs/Chassis.md) + - [Contract](docs/Contract.md) + - [ControlPanel](docs/ControlPanel.md) + - [ControlPanelList](docs/ControlPanelList.md) + - [Cpu](docs/Cpu.md) + - [Cpu1](docs/Cpu1.md) + - [CpuCapabilities](docs/CpuCapabilities.md) + - [CpuSettings](docs/CpuSettings.md) + - [CreateNetworkEquipmentCredentialOpts](docs/CreateNetworkEquipmentCredentialOpts.md) + - [CreateServerCredentialOpts](docs/CreateServerCredentialOpts.md) + - [CreateServerDhcpReservationOpts](docs/CreateServerDhcpReservationOpts.md) + - [Credential](docs/Credential.md) + - [CredentialList](docs/CredentialList.md) + - [CredentialType](docs/CredentialType.md) + - [CredentialWithoutPassword](docs/CredentialWithoutPassword.md) + - [CurrentServerJob](docs/CurrentServerJob.md) + - [DDos](docs/DDos.md) + - [DataTrafficNotificationSetting](docs/DataTrafficNotificationSetting.md) + - [DataTrafficNotificationSettingOpts](docs/DataTrafficNotificationSettingOpts.md) + - [Defaults](docs/Defaults.md) + - [Disk](docs/Disk.md) + - [EnableServerRescueModeOpts](docs/EnableServerRescueModeOpts.md) + - [ErrorResult](docs/ErrorResult.md) + - [FeatureAvailability](docs/FeatureAvailability.md) + - [Firmware](docs/Firmware.md) + - [GetDdosNotificationSettingResult](docs/GetDdosNotificationSettingResult.md) + - [GetNetworkEquipmentIpListResult](docs/GetNetworkEquipmentIpListResult.md) + - [GetNetworkEquipmentListResult](docs/GetNetworkEquipmentListResult.md) + - [GetNetworkEquipmentNullRouteHistoryResult](docs/GetNetworkEquipmentNullRouteHistoryResult.md) + - [GetNetworkEquipmentPowerStatusResult](docs/GetNetworkEquipmentPowerStatusResult.md) + - [GetNetworkInterfaceListResult](docs/GetNetworkInterfaceListResult.md) + - [GetOperatingSystemListResult](docs/GetOperatingSystemListResult.md) + - [GetOperatingSystemResult](docs/GetOperatingSystemResult.md) + - [GetRescueImageListResult](docs/GetRescueImageListResult.md) + - [GetServerBandwidthNotificationSettingListResult](docs/GetServerBandwidthNotificationSettingListResult.md) + - [GetServerDataTrafficNotificationSettingListResult](docs/GetServerDataTrafficNotificationSettingListResult.md) + - [GetServerDhcpReservationListResult](docs/GetServerDhcpReservationListResult.md) + - [GetServerHardwareResult](docs/GetServerHardwareResult.md) + - [GetServerListResult](docs/GetServerListResult.md) + - [GetServerNullRouteHistoryResult](docs/GetServerNullRouteHistoryResult.md) + - [GetServerPowerStatusResult](docs/GetServerPowerStatusResult.md) + - [Hdd](docs/Hdd.md) + - [InstallOperatingSystemOpts](docs/InstallOperatingSystemOpts.md) + - [InstallOperatingSystemPayload](docs/InstallOperatingSystemPayload.md) + - [InstallationJob](docs/InstallationJob.md) + - [InstallationJobPayload](docs/InstallationJobPayload.md) + - [Ip](docs/Ip.md) + - [Ipmi](docs/Ipmi.md) + - [Ipmi1](docs/Ipmi1.md) + - [IpmiResetServerOpts](docs/IpmiResetServerOpts.md) + - [JobMetadata](docs/JobMetadata.md) + - [JobType](docs/JobType.md) + - [LastClientRequest](docs/LastClientRequest.md) + - [Lease](docs/Lease.md) + - [LinkSpeed](docs/LinkSpeed.md) + - [LinkSpeeds](docs/LinkSpeeds.md) + - [Lldp](docs/Lldp.md) + - [LldpChassis](docs/LldpChassis.md) + - [Location](docs/Location.md) + - [MemoryBank](docs/MemoryBank.md) + - [Metadata](docs/Metadata.md) + - [Metric](docs/Metric.md) + - [MetricValue](docs/MetricValue.md) + - [MetricValues](docs/MetricValues.md) + - [Metrics](docs/Metrics.md) + - [MetricsMetadata](docs/MetricsMetadata.md) + - [Motherboard](docs/Motherboard.md) + - [Network](docs/Network.md) + - [NetworkCapabilities](docs/NetworkCapabilities.md) + - [NetworkEquipment](docs/NetworkEquipment.md) + - [NetworkEquipmentSpecs](docs/NetworkEquipmentSpecs.md) + - [NetworkInterface](docs/NetworkInterface.md) + - [NetworkInterfaces](docs/NetworkInterfaces.md) + - [NetworkSettings](docs/NetworkSettings.md) + - [NetworkTraffic](docs/NetworkTraffic.md) + - [NetworkType](docs/NetworkType.md) + - [NetworkTypeURL](docs/NetworkTypeURL.md) + - [NotificationSetting](docs/NotificationSetting.md) + - [NullRoute](docs/NullRoute.md) + - [OperatingSystem](docs/OperatingSystem.md) + - [OperationNetworkInterface](docs/OperationNetworkInterface.md) + - [Os](docs/Os.md) + - [Partition](docs/Partition.md) + - [Payload](docs/Payload.md) + - [PciCard](docs/PciCard.md) + - [Pdu](docs/Pdu.md) + - [Port](docs/Port.md) + - [Port1](docs/Port1.md) + - [PrivateNetwork](docs/PrivateNetwork.md) + - [Progress](docs/Progress.md) + - [Rack](docs/Rack.md) + - [RackType](docs/RackType.md) + - [Raid](docs/Raid.md) + - [RaidLevel](docs/RaidLevel.md) + - [RaidType](docs/RaidType.md) + - [Ram](docs/Ram.md) + - [RescueImage](docs/RescueImage.md) + - [Result](docs/Result.md) + - [ScanHardwareOpts](docs/ScanHardwareOpts.md) + - [Server](docs/Server.md) + - [ServerJob](docs/ServerJob.md) + - [ServerJobList](docs/ServerJobList.md) + - [ServerJobPayload](docs/ServerJobPayload.md) + - [ServerSpecs](docs/ServerSpecs.md) + - [SmartSupport](docs/SmartSupport.md) + - [Smartctl](docs/Smartctl.md) + - [SoftwareLicense](docs/SoftwareLicense.md) + - [Subnet](docs/Subnet.md) + - [Task](docs/Task.md) + - [UpdateDdosNotificationSettingOpts](docs/UpdateDdosNotificationSettingOpts.md) + - [UpdateIpProfileOpts](docs/UpdateIpProfileOpts.md) + - [UpdateNetworkEquipmentCredentialOpts](docs/UpdateNetworkEquipmentCredentialOpts.md) + - [UpdateNetworkEquipmentIpOpts](docs/UpdateNetworkEquipmentIpOpts.md) + - [UpdateNetworkEquipmentReferenceOpts](docs/UpdateNetworkEquipmentReferenceOpts.md) + - [UpdateServerCredentialOpts](docs/UpdateServerCredentialOpts.md) + - [UpdateServerReferenceOpts](docs/UpdateServerReferenceOpts.md) + - [Vlan](docs/Vlan.md) + + +## Documentation For Authorization + + +Authentication schemes defined for the API: +### BearerAuth + +- **Type**: HTTP Bearer token authentication + +Example + +```go +auth := context.WithValue(context.Background(), dedicatedserver.ContextAccessToken, "BEARER_TOKEN_STRING") +r, err := client.Service.Operation(auth, args) +``` + +### X-LSW-Auth + +- **Type**: API key +- **API key parameter name**: X-LSW-Auth +- **Location**: HTTP header + +Note, each API key must be added to a map of `map[string]APIKey` where the key is: X-LSW-Auth and passed in as the auth context for each request. + +Example + +```go +auth := context.WithValue( + context.Background(), + dedicatedserver.ContextAPIKeys, + map[string]dedicatedserver.APIKey{ + "X-LSW-Auth": {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 + + + diff --git a/invoice/README.md b/invoice/README.md index 16cc7ce..b39ee97 100644 --- a/invoice/README.md +++ b/invoice/README.md @@ -7,7 +7,7 @@ This API client was generated by the [OpenAPI Generator](https://openapi-generat - API version: v1 - Package version: 1.0.0 -- Generator version: 7.4.0 +- Generator version: 7.10.0 - Build package: org.openapitools.codegen.languages.GoClientCodegen ## Installation diff --git a/publiccloud/README.md b/publiccloud/README.md new file mode 100644 index 0000000..7a5ac73 --- /dev/null +++ b/publiccloud/README.md @@ -0,0 +1,369 @@ +# Go API client for publiccloud + +> The base URL for this API is: **https://api.leaseweb.com/publicCloud/v1/_** + +This API provides ways to launch and manage Public Cloud instances. + +
BETA
This API is in BETA. Documentation might be incorrect or incomplete. Functionality might change with the final release.> + +## Overview +This API client was generated by the [OpenAPI Generator](https://openapi-generator.tech) project. By using the [OpenAPI-spec](https://www.openapis.org/) from a remote server, you can easily generate an API client. + +- API version: v1 +- Package version: 1.0.0 +- Generator version: 7.10.0 +- Build package: org.openapitools.codegen.languages.GoClientCodegen + +## Installation + +Install the following dependencies: + +```sh +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: + +```go +import publiccloud "github.com/leaseweb/leaseweb-go-sdk/publiccloud" +``` + +To use a proxy, set the environment variable `HTTP_PROXY`: + +```go +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 `publiccloud.ContextServerIndex` of type `int`. + +```go +ctx := context.WithValue(context.Background(), publiccloud.ContextServerIndex, 1) +``` + +### Templated Server URL + +Templated server URL is formatted using default variables from configuration or from context value `publiccloud.ContextServerVariables` of type `map[string]string`. + +```go +ctx := context.WithValue(context.Background(), publiccloud.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 `publiccloud.ContextOperationServerIndices` and `publiccloud.ContextOperationServerVariables` context maps. + +```go +ctx := context.WithValue(context.Background(), publiccloud.ContextOperationServerIndices, map[string]int{ + "{classname}Service.{nickname}": 2, +}) +ctx = context.WithValue(context.Background(), publiccloud.ContextOperationServerVariables, map[string]map[string]string{ + "{classname}Service.{nickname}": { + "port": "8443", + }, +}) +``` + +## Documentation for API Endpoints + +All URIs are relative to *https://api.leaseweb.com/publicCloud/v1* + +Class | Method | HTTP request | Description +------------ | ------------- | ------------- | ------------- +*PubliccloudAPI* | [**AddToPrivateNetwork**](docs/PubliccloudAPI.md#addtoprivatenetwork) | **Put** /instances/{instanceId}/addToPrivateNetwork | Add instance to Private Network +*PubliccloudAPI* | [**AttachIso**](docs/PubliccloudAPI.md#attachiso) | **Post** /instances/{instanceId}/attachIso | Attach ISO to instance +*PubliccloudAPI* | [**CancelInstanceTermination**](docs/PubliccloudAPI.md#cancelinstancetermination) | **Post** /instances/{instanceId}/cancelTermination | Cancel instance termination +*PubliccloudAPI* | [**CreateAutoScalingGroup**](docs/PubliccloudAPI.md#createautoscalinggroup) | **Post** /autoScalingGroups | Create Auto Scaling Group +*PubliccloudAPI* | [**CreateImage**](docs/PubliccloudAPI.md#createimage) | **Post** /images | Create Custom Image +*PubliccloudAPI* | [**CreateLoadBalancerListener**](docs/PubliccloudAPI.md#createloadbalancerlistener) | **Post** /loadBalancers/{loadBalancerId}/listeners | Create listener +*PubliccloudAPI* | [**CreateSnapshot**](docs/PubliccloudAPI.md#createsnapshot) | **Post** /instances/{instanceId}/snapshots | Create instance snapshot +*PubliccloudAPI* | [**CreateTargetGroup**](docs/PubliccloudAPI.md#createtargetgroup) | **Post** /targetGroups | Create Target Group +*PubliccloudAPI* | [**DeleteAutoScalingGroup**](docs/PubliccloudAPI.md#deleteautoscalinggroup) | **Delete** /autoScalingGroups/{autoScalingGroupId} | Delete Auto Scaling Group +*PubliccloudAPI* | [**DeleteCredential**](docs/PubliccloudAPI.md#deletecredential) | **Delete** /instances/{instanceId}/credentials/{type}/{username} | Delete credentials +*PubliccloudAPI* | [**DeleteCredentials**](docs/PubliccloudAPI.md#deletecredentials) | **Delete** /instances/{instanceId}/credentials | Delete all instance credentials +*PubliccloudAPI* | [**DeleteLoadBalancerListener**](docs/PubliccloudAPI.md#deleteloadbalancerlistener) | **Delete** /loadBalancers/{loadBalancerId}/listeners/{listenerId} | Delete load balancer listener +*PubliccloudAPI* | [**DeleteSnapshot**](docs/PubliccloudAPI.md#deletesnapshot) | **Delete** /instances/{instanceId}/snapshots/{snapshotId} | Delete instance snapshot +*PubliccloudAPI* | [**DeleteTargetGroup**](docs/PubliccloudAPI.md#deletetargetgroup) | **Delete** /targetGroups/{targetGroupId} | Delete Target Group +*PubliccloudAPI* | [**DeregisterAutoScalingGroupTargetGroup**](docs/PubliccloudAPI.md#deregisterautoscalinggrouptargetgroup) | **Post** /autoScalingGroups/{autoScalingGroupId}/deregisterTargetGroup | Deregister Target Group +*PubliccloudAPI* | [**DeregisterTargets**](docs/PubliccloudAPI.md#deregistertargets) | **Post** /targetGroups/{targetGroupId}/deregisterTargets | Deregister Targets +*PubliccloudAPI* | [**DetachIso**](docs/PubliccloudAPI.md#detachiso) | **Post** /instances/{instanceId}/detachIso | Detach ISO from instance +*PubliccloudAPI* | [**GetAutoScalingGroup**](docs/PubliccloudAPI.md#getautoscalinggroup) | **Get** /autoScalingGroups/{autoScalingGroupId} | Get Auto Scaling Group details +*PubliccloudAPI* | [**GetAutoScalingGroupInstanceList**](docs/PubliccloudAPI.md#getautoscalinggroupinstancelist) | **Get** /autoScalingGroups/{autoScalingGroupId}/instances | Get list of instances belonging to an Auto Scaling Group +*PubliccloudAPI* | [**GetAutoScalingGroupList**](docs/PubliccloudAPI.md#getautoscalinggrouplist) | **Get** /autoScalingGroups | Get Auto Scaling Group list +*PubliccloudAPI* | [**GetConnectionsMetrics**](docs/PubliccloudAPI.md#getconnectionsmetrics) | **Get** /loadBalancers/{loadBalancerId}/metrics/connections | Get connections metrics +*PubliccloudAPI* | [**GetConnectionsPerSecondMetrics**](docs/PubliccloudAPI.md#getconnectionspersecondmetrics) | **Get** /loadBalancers/{loadBalancerId}/metrics/connectionsPerSecond | Get connections per second metrics +*PubliccloudAPI* | [**GetConsoleAccessToInstance**](docs/PubliccloudAPI.md#getconsoleaccesstoinstance) | **Get** /instances/{instanceId}/console | Get console access +*PubliccloudAPI* | [**GetCpuMetrics**](docs/PubliccloudAPI.md#getcpumetrics) | **Get** /instances/{instanceId}/metrics/cpu | Get instance CPU metrics +*PubliccloudAPI* | [**GetCredential**](docs/PubliccloudAPI.md#getcredential) | **Get** /instances/{instanceId}/credentials/{type}/{username} | Get credentials by type and username +*PubliccloudAPI* | [**GetCredentialList**](docs/PubliccloudAPI.md#getcredentiallist) | **Get** /instances/{instanceId}/credentials | List credentials stored for instance +*PubliccloudAPI* | [**GetCredentialListByType**](docs/PubliccloudAPI.md#getcredentiallistbytype) | **Get** /instances/{instanceId}/credentials/{type} | Get credentials by type +*PubliccloudAPI* | [**GetDataTrafficMetrics**](docs/PubliccloudAPI.md#getdatatrafficmetrics) | **Get** /instances/{instanceId}/metrics/datatraffic | Get instance data traffic metrics +*PubliccloudAPI* | [**GetDataTransferredMetrics**](docs/PubliccloudAPI.md#getdatatransferredmetrics) | **Get** /loadBalancers/{loadBalancerId}/metrics/dataTransferred | Get load balancer data transferred metrics +*PubliccloudAPI* | [**GetDataTransferredPerSecondMetrics**](docs/PubliccloudAPI.md#getdatatransferredpersecondmetrics) | **Get** /loadBalancers/{loadBalancerId}/metrics/dataTransferredPerSecond | Get load balancer data transferred per second metrics +*PubliccloudAPI* | [**GetExpenses**](docs/PubliccloudAPI.md#getexpenses) | **Get** /equipments/{equipmentId}/expenses | Get costs for a given month. +*PubliccloudAPI* | [**GetImageList**](docs/PubliccloudAPI.md#getimagelist) | **Get** /images | List all available Images +*PubliccloudAPI* | [**GetInstance**](docs/PubliccloudAPI.md#getinstance) | **Get** /instances/{instanceId} | Get instance details +*PubliccloudAPI* | [**GetInstanceList**](docs/PubliccloudAPI.md#getinstancelist) | **Get** /instances | Get instance list +*PubliccloudAPI* | [**GetInstanceTypeList**](docs/PubliccloudAPI.md#getinstancetypelist) | **Get** /instanceTypes | List instance types +*PubliccloudAPI* | [**GetIp**](docs/PubliccloudAPI.md#getip) | **Get** /instances/{instanceId}/ips/{ip} | Get details about an instance's IP +*PubliccloudAPI* | [**GetIpList**](docs/PubliccloudAPI.md#getiplist) | **Get** /instances/{instanceId}/ips | List instance's IPs +*PubliccloudAPI* | [**GetIsoList**](docs/PubliccloudAPI.md#getisolist) | **Get** /isos | List available ISOs +*PubliccloudAPI* | [**GetLoadBalancer**](docs/PubliccloudAPI.md#getloadbalancer) | **Get** /loadBalancers/{loadBalancerId} | Get load balancer details +*PubliccloudAPI* | [**GetLoadBalancerList**](docs/PubliccloudAPI.md#getloadbalancerlist) | **Get** /loadBalancers | Get load balancer list +*PubliccloudAPI* | [**GetLoadBalancerListener**](docs/PubliccloudAPI.md#getloadbalancerlistener) | **Get** /loadBalancers/{loadBalancerId}/listeners/{listenerId} | Get listener details +*PubliccloudAPI* | [**GetLoadBalancerListenerList**](docs/PubliccloudAPI.md#getloadbalancerlistenerlist) | **Get** /loadBalancers/{loadBalancerId}/listeners | Get listener list +*PubliccloudAPI* | [**GetMarketAppList**](docs/PubliccloudAPI.md#getmarketapplist) | **Get** /marketApps | Get marketplace apps +*PubliccloudAPI* | [**GetRegionList**](docs/PubliccloudAPI.md#getregionlist) | **Get** /regions | List regions +*PubliccloudAPI* | [**GetReinstallImageList**](docs/PubliccloudAPI.md#getreinstallimagelist) | **Get** /instances/{instanceId}/reinstall/images | List images available for reinstall +*PubliccloudAPI* | [**GetRequestsMetrics**](docs/PubliccloudAPI.md#getrequestsmetrics) | **Get** /loadBalancers/{loadBalancerId}/metrics/requests | Get load balancer requests metrics +*PubliccloudAPI* | [**GetRequestsPerSecondMetrics**](docs/PubliccloudAPI.md#getrequestspersecondmetrics) | **Get** /loadBalancers/{loadBalancerId}/metrics/requestsPerSecond | Get load balancer requests per second metrics +*PubliccloudAPI* | [**GetResponseCodesMetrics**](docs/PubliccloudAPI.md#getresponsecodesmetrics) | **Get** /loadBalancers/{loadBalancerId}/metrics/responseCodes | Get response codes metrics +*PubliccloudAPI* | [**GetResponseCodesPerSecondMetrics**](docs/PubliccloudAPI.md#getresponsecodespersecondmetrics) | **Get** /loadBalancers/{loadBalancerId}/metrics/responseCodesPerSecond | Get response codes per second metrics +*PubliccloudAPI* | [**GetSnapshot**](docs/PubliccloudAPI.md#getsnapshot) | **Get** /instances/{instanceId}/snapshots/{snapshotId} | Get snapshot detail +*PubliccloudAPI* | [**GetSnapshotList**](docs/PubliccloudAPI.md#getsnapshotlist) | **Get** /instances/{instanceId}/snapshots | List snapshots +*PubliccloudAPI* | [**GetTargetGroup**](docs/PubliccloudAPI.md#gettargetgroup) | **Get** /targetGroups/{targetGroupId} | Get Target Group details +*PubliccloudAPI* | [**GetTargetGroupList**](docs/PubliccloudAPI.md#gettargetgrouplist) | **Get** /targetGroups | Get Target Group list +*PubliccloudAPI* | [**GetTargetList**](docs/PubliccloudAPI.md#gettargetlist) | **Get** /targetGroups/{targetGroupId}/targets | Get Targets +*PubliccloudAPI* | [**GetUpdateInstanceTypeList**](docs/PubliccloudAPI.md#getupdateinstancetypelist) | **Get** /instances/{instanceId}/instanceTypesUpdate | List available instance types for update +*PubliccloudAPI* | [**LaunchInstance**](docs/PubliccloudAPI.md#launchinstance) | **Post** /instances | Launch instance +*PubliccloudAPI* | [**LaunchLoadBalancer**](docs/PubliccloudAPI.md#launchloadbalancer) | **Post** /loadBalancers | Launch Load balancer +*PubliccloudAPI* | [**NullRouteIp**](docs/PubliccloudAPI.md#nullrouteip) | **Post** /instances/{instanceId}/ips/{ip}/null | Null route IP +*PubliccloudAPI* | [**RebootInstance**](docs/PubliccloudAPI.md#rebootinstance) | **Post** /instances/{instanceId}/reboot | Reboot instance +*PubliccloudAPI* | [**RegisterAutoScalingGroupTargetGroup**](docs/PubliccloudAPI.md#registerautoscalinggrouptargetgroup) | **Post** /autoScalingGroups/{autoScalingGroupId}/registerTargetGroup | Register Target Group +*PubliccloudAPI* | [**RegisterTargets**](docs/PubliccloudAPI.md#registertargets) | **Post** /targetGroups/{targetGroupId}/registerTargets | Register Targets +*PubliccloudAPI* | [**ReinstallInstance**](docs/PubliccloudAPI.md#reinstallinstance) | **Put** /instances/{instanceId}/reinstall | Reinstall instance +*PubliccloudAPI* | [**RemoveFromPrivateNetwork**](docs/PubliccloudAPI.md#removefromprivatenetwork) | **Delete** /instances/{instanceId}/removeFromPrivateNetwork | Remove instance from Private Network +*PubliccloudAPI* | [**RemoveIpNullRoute**](docs/PubliccloudAPI.md#removeipnullroute) | **Post** /instances/{instanceId}/ips/{ip}/unnull | Remove an IP null route +*PubliccloudAPI* | [**ResetPassword**](docs/PubliccloudAPI.md#resetpassword) | **Post** /instances/{instanceId}/resetPassword | Reset instance password +*PubliccloudAPI* | [**RestoreSnapshot**](docs/PubliccloudAPI.md#restoresnapshot) | **Put** /instances/{instanceId}/snapshots/{snapshotId} | Restore instance snapshot +*PubliccloudAPI* | [**StartInstance**](docs/PubliccloudAPI.md#startinstance) | **Post** /instances/{instanceId}/start | Start instance +*PubliccloudAPI* | [**StopInstance**](docs/PubliccloudAPI.md#stopinstance) | **Post** /instances/{instanceId}/stop | Stop instance +*PubliccloudAPI* | [**StoreCredential**](docs/PubliccloudAPI.md#storecredential) | **Post** /instances/{instanceId}/credentials | Store credentials +*PubliccloudAPI* | [**TerminateInstance**](docs/PubliccloudAPI.md#terminateinstance) | **Delete** /instances/{instanceId} | Terminate instance +*PubliccloudAPI* | [**TerminateLoadBalancer**](docs/PubliccloudAPI.md#terminateloadbalancer) | **Delete** /loadBalancers/{loadBalancerId} | Delete load balancer +*PubliccloudAPI* | [**UpdateAutoScalingGroup**](docs/PubliccloudAPI.md#updateautoscalinggroup) | **Put** /autoScalingGroups/{autoScalingGroupId} | Update Auto Scaling Group +*PubliccloudAPI* | [**UpdateCredential**](docs/PubliccloudAPI.md#updatecredential) | **Put** /instances/{instanceId}/credentials/{type}/{username} | Update credentials +*PubliccloudAPI* | [**UpdateImage**](docs/PubliccloudAPI.md#updateimage) | **Put** /images/{imageId} | Update Custom Image +*PubliccloudAPI* | [**UpdateInstance**](docs/PubliccloudAPI.md#updateinstance) | **Put** /instances/{instanceId} | Update instance +*PubliccloudAPI* | [**UpdateIp**](docs/PubliccloudAPI.md#updateip) | **Put** /instances/{instanceId}/ips/{ip} | Update IP +*PubliccloudAPI* | [**UpdateLoadBalancer**](docs/PubliccloudAPI.md#updateloadbalancer) | **Put** /loadBalancers/{loadBalancerId} | Update load balancer +*PubliccloudAPI* | [**UpdateLoadBalancerListener**](docs/PubliccloudAPI.md#updateloadbalancerlistener) | **Put** /loadBalancers/{loadBalancerId}/listeners/{listenerId} | Update a listener +*PubliccloudAPI* | [**UpdateTargetGroup**](docs/PubliccloudAPI.md#updatetargetgroup) | **Put** /targetGroups/{targetGroupId} | Update Target Group + + +## Documentation For Models + + - [AttachIsoOpts](docs/AttachIsoOpts.md) + - [AutoScaledInstance](docs/AutoScaledInstance.md) + - [AutoScalingGroup](docs/AutoScalingGroup.md) + - [AutoScalingGroupDetails](docs/AutoScalingGroupDetails.md) + - [AutoScalingGroupState](docs/AutoScalingGroupState.md) + - [AutoScalingGroupType](docs/AutoScalingGroupType.md) + - [Balance](docs/Balance.md) + - [Billing](docs/Billing.md) + - [BillingFrequency](docs/BillingFrequency.md) + - [Contract](docs/Contract.md) + - [ContractState](docs/ContractState.md) + - [ContractTerm](docs/ContractTerm.md) + - [ContractType](docs/ContractType.md) + - [Cpu](docs/Cpu.md) + - [CpuGranularity](docs/CpuGranularity.md) + - [CpuMetrics](docs/CpuMetrics.md) + - [CpuMetricsMetadata](docs/CpuMetricsMetadata.md) + - [CpuMetricsMetadataSummary](docs/CpuMetricsMetadataSummary.md) + - [CpuMetricsMetadataSummaryCpuMetrics](docs/CpuMetricsMetadataSummaryCpuMetrics.md) + - [CpuMetricsMetadataSummaryPeak](docs/CpuMetricsMetadataSummaryPeak.md) + - [CreateAutoScalingGroupOpts](docs/CreateAutoScalingGroupOpts.md) + - [CreateImageOpts](docs/CreateImageOpts.md) + - [CreateTargetGroupOpts](docs/CreateTargetGroupOpts.md) + - [Credential](docs/Credential.md) + - [CredentialType](docs/CredentialType.md) + - [DataTrafficMetrics](docs/DataTrafficMetrics.md) + - [DataTransferredMetrics](docs/DataTransferredMetrics.md) + - [Ddos](docs/Ddos.md) + - [ErrorResult](docs/ErrorResult.md) + - [ExpenseResultInstance](docs/ExpenseResultInstance.md) + - [Flavour](docs/Flavour.md) + - [GetAutoScalingGroupInstanceListResult](docs/GetAutoScalingGroupInstanceListResult.md) + - [GetAutoScalingGroupListResult](docs/GetAutoScalingGroupListResult.md) + - [GetConnectionsMetricsResult](docs/GetConnectionsMetricsResult.md) + - [GetConnectionsPerSecondMetricsResult](docs/GetConnectionsPerSecondMetricsResult.md) + - [GetConsoleAccessToInstanceResult](docs/GetConsoleAccessToInstanceResult.md) + - [GetCpuMetricsResult](docs/GetCpuMetricsResult.md) + - [GetCredentialListByTypeResult](docs/GetCredentialListByTypeResult.md) + - [GetCredentialListResult](docs/GetCredentialListResult.md) + - [GetCredentialResult](docs/GetCredentialResult.md) + - [GetDataTrafficMetricsResult](docs/GetDataTrafficMetricsResult.md) + - [GetDataTransferredMetricsResult](docs/GetDataTransferredMetricsResult.md) + - [GetDataTransferredPerSecondMetricsResult](docs/GetDataTransferredPerSecondMetricsResult.md) + - [GetExpensesResult](docs/GetExpensesResult.md) + - [GetImageListResult](docs/GetImageListResult.md) + - [GetInstanceListResult](docs/GetInstanceListResult.md) + - [GetIpListResult](docs/GetIpListResult.md) + - [GetIsoListResult](docs/GetIsoListResult.md) + - [GetLoadBalancerListResult](docs/GetLoadBalancerListResult.md) + - [GetLoadBalancerListenerListResult](docs/GetLoadBalancerListenerListResult.md) + - [GetMarketAppListResult](docs/GetMarketAppListResult.md) + - [GetRegionListResult](docs/GetRegionListResult.md) + - [GetReinstallImageListResult](docs/GetReinstallImageListResult.md) + - [GetRequestsMetricsResult](docs/GetRequestsMetricsResult.md) + - [GetRequestsPerSecondMetricsResult](docs/GetRequestsPerSecondMetricsResult.md) + - [GetResponseCodesMetricsResult](docs/GetResponseCodesMetricsResult.md) + - [GetResponseCodesPerSecondMetricsResult](docs/GetResponseCodesPerSecondMetricsResult.md) + - [GetSnapshotListResult](docs/GetSnapshotListResult.md) + - [GetTargetGroupListResult](docs/GetTargetGroupListResult.md) + - [GetTargetListResult](docs/GetTargetListResult.md) + - [HealthCheck](docs/HealthCheck.md) + - [HealthCheckOpts](docs/HealthCheckOpts.md) + - [HealthCheckStatus](docs/HealthCheckStatus.md) + - [HttpMethod](docs/HttpMethod.md) + - [HttpMethodOpt](docs/HttpMethodOpt.md) + - [Image](docs/Image.md) + - [ImageDetails](docs/ImageDetails.md) + - [ImageState](docs/ImageState.md) + - [Instance](docs/Instance.md) + - [InstanceBase](docs/InstanceBase.md) + - [InstanceDetails](docs/InstanceDetails.md) + - [InstanceType](docs/InstanceType.md) + - [InstanceTypes](docs/InstanceTypes.md) + - [Ip](docs/Ip.md) + - [IpDetails](docs/IpDetails.md) + - [IpVersion](docs/IpVersion.md) + - [Iso](docs/Iso.md) + - [LaunchInstanceOpts](docs/LaunchInstanceOpts.md) + - [LaunchLoadBalancerOpts](docs/LaunchLoadBalancerOpts.md) + - [LoadBalancer](docs/LoadBalancer.md) + - [LoadBalancerConfiguration](docs/LoadBalancerConfiguration.md) + - [LoadBalancerDetails](docs/LoadBalancerDetails.md) + - [LoadBalancerGranularity](docs/LoadBalancerGranularity.md) + - [LoadBalancerListItem](docs/LoadBalancerListItem.md) + - [LoadBalancerListener](docs/LoadBalancerListener.md) + - [LoadBalancerListenerCreateOpts](docs/LoadBalancerListenerCreateOpts.md) + - [LoadBalancerListenerDefaultRule](docs/LoadBalancerListenerDefaultRule.md) + - [LoadBalancerListenerDetails](docs/LoadBalancerListenerDetails.md) + - [LoadBalancerListenerOpts](docs/LoadBalancerListenerOpts.md) + - [LoadBalancerListenerRule](docs/LoadBalancerListenerRule.md) + - [MarketApp](docs/MarketApp.md) + - [MarketAppId](docs/MarketAppId.md) + - [Memory](docs/Memory.md) + - [Metadata](docs/Metadata.md) + - [MetricsGranularity](docs/MetricsGranularity.md) + - [MetricsMetadataProperties](docs/MetricsMetadataProperties.md) + - [MetricsMetadataPropertiesGranularity](docs/MetricsMetadataPropertiesGranularity.md) + - [MetricsProperties](docs/MetricsProperties.md) + - [MetricsUnit](docs/MetricsUnit.md) + - [MetricsValues](docs/MetricsValues.md) + - [NetworkSpeed](docs/NetworkSpeed.md) + - [NetworkType](docs/NetworkType.md) + - [NullRouteIpOpts](docs/NullRouteIpOpts.md) + - [Peak](docs/Peak.md) + - [Price](docs/Price.md) + - [Prices](docs/Prices.md) + - [PrivateNetwork](docs/PrivateNetwork.md) + - [Protocol](docs/Protocol.md) + - [Region](docs/Region.md) + - [RegionName](docs/RegionName.md) + - [ReinstallInstanceOpts](docs/ReinstallInstanceOpts.md) + - [Resources](docs/Resources.md) + - [ResponseCodesMetrics](docs/ResponseCodesMetrics.md) + - [SchemasHealthCheckStatus](docs/SchemasHealthCheckStatus.md) + - [Snapshot](docs/Snapshot.md) + - [SslCertificate](docs/SslCertificate.md) + - [State](docs/State.md) + - [StickySession](docs/StickySession.md) + - [Storage](docs/Storage.md) + - [StorageSize](docs/StorageSize.md) + - [StorageType](docs/StorageType.md) + - [StoreCredentialOpts](docs/StoreCredentialOpts.md) + - [StoreCredentialResult](docs/StoreCredentialResult.md) + - [Summary](docs/Summary.md) + - [Target](docs/Target.md) + - [TargetGroup](docs/TargetGroup.md) + - [TargetGroupIdOpts](docs/TargetGroupIdOpts.md) + - [Tier](docs/Tier.md) + - [Traffic](docs/Traffic.md) + - [TrafficMetric](docs/TrafficMetric.md) + - [TrafficMetricSummary](docs/TrafficMetricSummary.md) + - [TrafficMetricValue](docs/TrafficMetricValue.md) + - [TrafficMetricsMetaData](docs/TrafficMetricsMetaData.md) + - [TypeName](docs/TypeName.md) + - [UpdateAutoScalingGroupOpts](docs/UpdateAutoScalingGroupOpts.md) + - [UpdateCredentialOpts](docs/UpdateCredentialOpts.md) + - [UpdateCredentialResult](docs/UpdateCredentialResult.md) + - [UpdateImageOpts](docs/UpdateImageOpts.md) + - [UpdateInstanceOpts](docs/UpdateInstanceOpts.md) + - [UpdateIpOpts](docs/UpdateIpOpts.md) + - [UpdateLoadBalancerOpts](docs/UpdateLoadBalancerOpts.md) + - [UpdateTargetGroupOpts](docs/UpdateTargetGroupOpts.md) + - [Values](docs/Values.md) + + +## Documentation For Authorization + + +Authentication schemes defined for the API: +### BearerAuth + +- **Type**: HTTP Bearer token authentication + +Example + +```go +auth := context.WithValue(context.Background(), publiccloud.ContextAccessToken, "BEARER_TOKEN_STRING") +r, err := client.Service.Operation(auth, args) +``` + +### X-LSW-Auth + +- **Type**: API key +- **API key parameter name**: X-LSW-Auth +- **Location**: HTTP header + +Note, each API key must be added to a map of `map[string]APIKey` where the key is: X-LSW-Auth and passed in as the auth context for each request. + +Example + +```go +auth := context.WithValue( + context.Background(), + publiccloud.ContextAPIKeys, + map[string]publiccloud.APIKey{ + "X-LSW-Auth": {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 + + +