Skip to content

Commit

Permalink
auto-generated version 1.3.0
Browse files Browse the repository at this point in the history
  • Loading branch information
ionoscloudsdk committed Jan 21, 2025
1 parent ea7bbee commit ac830a0
Show file tree
Hide file tree
Showing 6 changed files with 100 additions and 121 deletions.
201 changes: 92 additions & 109 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
[![Gitter](https://img.shields.io/gitter/room/ionos-cloud/sdk-general)](https://gitter.im/ionos-cloud/sdk-general)

# Go API client for ionoscloud

Using the Certificate Manager Service, you can conveniently provision and manage SSL certificates
Expand All @@ -11,7 +13,7 @@ The service provides the basic functions of uploading and deleting your certific
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: 2.0
- Package version: 1.2.0
- Package version: 1.3.0
- Build package: org.openapitools.codegen.languages.GoClientCodegen

## Installation
Expand All @@ -20,139 +22,120 @@ Install the following dependencies:

```shell
go get github.com/stretchr/testify/assert
go get golang.org/x/oauth2
go get golang.org/x/net/context
go get github.com/antihax/optional
```

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

```golang
import ionoscloud "github.com/ionos-cloud/sdk-go-cert-manager"
import "./ionoscloud"
```

To use a proxy, set the environment variable `HTTP_PROXY`:

```golang
os.Setenv("HTTP_PROXY", "http://proxy_name:proxy_port")
```
## Authentication

## Configuration of Server URL
All available server URLs are:

Default configuration comes with `Servers` field that contains server objects as defined in the OpenAPI specification.
- *https://certificate-manager.de-fra.ionos.com* - Frankfurt

### Select Server Configuration
By default, *https://certificate-manager.de-fra.ionos.com* is used, however this can be overriden at authentication, either
by setting the `IONOS_API_URL` environment variable or by specifying the `hostUrl` parameter when
initializing the sdk client.

For using other server than the one defined on index 0 set context value `sw.ContextServerIndex` of type `int`.
The username and password or the authentication token can be manually specified when initializing
the sdk client:

```golang
ctx := context.WithValue(context.Background(), ionoscloud.ContextServerIndex, 1)
```

### Templated Server URL

Templated server URL is formatted using default variables from configuration or from context value `sw.ContextServerVariables` of type `map[string]string`.
client := ionoscloud.NewAPIClient(ionoscloud.NewConfiguration(username, password, token, hostUrl))

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

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

## Documentation for API Endpoints

All URIs are relative to *https://certificate-manager.de-fra.ionos.com*

Class | Method | HTTP request | Description
------------ | ------------- | ------------- | -------------
*AutoCertificateApi* | [**AutoCertificatesDelete**](docs/api/AutoCertificateApi.md#autocertificatesdelete) | **Delete** /auto-certificates/{autoCertificateId} | Delete AutoCertificate
*AutoCertificateApi* | [**AutoCertificatesFindById**](docs/api/AutoCertificateApi.md#autocertificatesfindbyid) | **Get** /auto-certificates/{autoCertificateId} | Retrieve AutoCertificate
*AutoCertificateApi* | [**AutoCertificatesGet**](docs/api/AutoCertificateApi.md#autocertificatesget) | **Get** /auto-certificates | Retrieve all AutoCertificate
*AutoCertificateApi* | [**AutoCertificatesPatch**](docs/api/AutoCertificateApi.md#autocertificatespatch) | **Patch** /auto-certificates/{autoCertificateId} | Updates AutoCertificate
*AutoCertificateApi* | [**AutoCertificatesPost**](docs/api/AutoCertificateApi.md#autocertificatespost) | **Post** /auto-certificates | Create AutoCertificate
*CertificateApi* | [**CertificatesDelete**](docs/api/CertificateApi.md#certificatesdelete) | **Delete** /certificates/{certificateId} | Delete Certificate
*CertificateApi* | [**CertificatesFindById**](docs/api/CertificateApi.md#certificatesfindbyid) | **Get** /certificates/{certificateId} | Retrieve Certificate
*CertificateApi* | [**CertificatesGet**](docs/api/CertificateApi.md#certificatesget) | **Get** /certificates | Retrieve all Certificate
*CertificateApi* | [**CertificatesPatch**](docs/api/CertificateApi.md#certificatespatch) | **Patch** /certificates/{certificateId} | Updates Certificate
*CertificateApi* | [**CertificatesPost**](docs/api/CertificateApi.md#certificatespost) | **Post** /certificates | Create Certificate
*ProviderApi* | [**ProvidersDelete**](docs/api/ProviderApi.md#providersdelete) | **Delete** /providers/{providerId} | Delete Provider
*ProviderApi* | [**ProvidersFindById**](docs/api/ProviderApi.md#providersfindbyid) | **Get** /providers/{providerId} | Retrieve Provider
*ProviderApi* | [**ProvidersGet**](docs/api/ProviderApi.md#providersget) | **Get** /providers | Retrieve all Provider
*ProviderApi* | [**ProvidersPatch**](docs/api/ProviderApi.md#providerspatch) | **Patch** /providers/{providerId} | Updates Provider
*ProviderApi* | [**ProvidersPost**](docs/api/ProviderApi.md#providerspost) | **Post** /providers | Create Provider


## Documentation For Models
Environment variables can also be used. The sdk uses the following variables:
- IONOS_TOKEN - login via token. This is the recommended way to authenticate.
- IONOS_USERNAME - to specify the username used to login
- IONOS_PASSWORD - to specify the password
- IONOS_API_URL - to specify the API server URL

- [AutoCertificate](docs/models/AutoCertificate.md)
- [AutoCertificateCreate](docs/models/AutoCertificateCreate.md)
- [AutoCertificatePatch](docs/models/AutoCertificatePatch.md)
- [AutoCertificateRead](docs/models/AutoCertificateRead.md)
- [AutoCertificateReadList](docs/models/AutoCertificateReadList.md)
- [AutoCertificateReadListAllOf](docs/models/AutoCertificateReadListAllOf.md)
- [Certificate](docs/models/Certificate.md)
- [CertificateCreate](docs/models/CertificateCreate.md)
- [CertificatePatch](docs/models/CertificatePatch.md)
- [CertificateRead](docs/models/CertificateRead.md)
- [CertificateReadList](docs/models/CertificateReadList.md)
- [CertificateReadListAllOf](docs/models/CertificateReadListAllOf.md)
- [Connection](docs/models/Connection.md)
- [DayOfTheWeek](docs/models/DayOfTheWeek.md)
- [Error](docs/models/Error.md)
- [ErrorMessages](docs/models/ErrorMessages.md)
- [Links](docs/models/Links.md)
- [MaintenanceWindow](docs/models/MaintenanceWindow.md)
- [Metadata](docs/models/Metadata.md)
- [MetadataWithAutoCertificateInformation](docs/models/MetadataWithAutoCertificateInformation.md)
- [MetadataWithAutoCertificateInformationAllOf](docs/models/MetadataWithAutoCertificateInformationAllOf.md)
- [MetadataWithCertificateInformation](docs/models/MetadataWithCertificateInformation.md)
- [MetadataWithCertificateInformationAllOf](docs/models/MetadataWithCertificateInformationAllOf.md)
- [MetadataWithStatus](docs/models/MetadataWithStatus.md)
- [MetadataWithStatusAllOf](docs/models/MetadataWithStatusAllOf.md)
- [Pagination](docs/models/Pagination.md)
- [PatchName](docs/models/PatchName.md)
- [Provider](docs/models/Provider.md)
- [ProviderCreate](docs/models/ProviderCreate.md)
- [ProviderExternalAccountBinding](docs/models/ProviderExternalAccountBinding.md)
- [ProviderPatch](docs/models/ProviderPatch.md)
- [ProviderRead](docs/models/ProviderRead.md)
- [ProviderReadList](docs/models/ProviderReadList.md)
- [ProviderReadListAllOf](docs/models/ProviderReadListAllOf.md)


## Documentation For Authorization


Authentication schemes defined for the API:
### tokenAuth

- **Type**: HTTP Bearer token authentication

Example
In this case, the client configuration needs to be initialized using `NewConfigurationFromEnv()`.

```golang
auth := context.WithValue(context.Background(), sw.ContextAccessToken, "BEARER_TOKEN_STRING")
r, err := client.Service.Operation(auth, args)
```


## Documentation for Utility Methods
client := ionoscloud.NewAPIClient(ionoscloud.NewConfigurationFromEnv())

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
## Documentation for API Endpoints

All URIs are relative to *https://certificate-manager.de-fra.ionos.com*
<details >
<summary title="Click to toggle">API Endpoints table</summary>


| Class | Method | HTTP request | Description |
| ------------- | ------------- | ------------- | ------------- |
| AutoCertificateApi | [**AutoCertificatesDelete**](docs/api/AutoCertificateApi.md#AutoCertificatesDelete) | **Delete** /auto-certificates/{autoCertificateId} | Delete AutoCertificate |
| AutoCertificateApi | [**AutoCertificatesFindById**](docs/api/AutoCertificateApi.md#AutoCertificatesFindById) | **Get** /auto-certificates/{autoCertificateId} | Retrieve AutoCertificate |
| AutoCertificateApi | [**AutoCertificatesGet**](docs/api/AutoCertificateApi.md#AutoCertificatesGet) | **Get** /auto-certificates | Retrieve all AutoCertificate |
| AutoCertificateApi | [**AutoCertificatesPatch**](docs/api/AutoCertificateApi.md#AutoCertificatesPatch) | **Patch** /auto-certificates/{autoCertificateId} | Updates AutoCertificate |
| AutoCertificateApi | [**AutoCertificatesPost**](docs/api/AutoCertificateApi.md#AutoCertificatesPost) | **Post** /auto-certificates | Create AutoCertificate |
| CertificateApi | [**CertificatesDelete**](docs/api/CertificateApi.md#CertificatesDelete) | **Delete** /certificates/{certificateId} | Delete Certificate |
| CertificateApi | [**CertificatesFindById**](docs/api/CertificateApi.md#CertificatesFindById) | **Get** /certificates/{certificateId} | Retrieve Certificate |
| CertificateApi | [**CertificatesGet**](docs/api/CertificateApi.md#CertificatesGet) | **Get** /certificates | Retrieve all Certificate |
| CertificateApi | [**CertificatesPatch**](docs/api/CertificateApi.md#CertificatesPatch) | **Patch** /certificates/{certificateId} | Updates Certificate |
| CertificateApi | [**CertificatesPost**](docs/api/CertificateApi.md#CertificatesPost) | **Post** /certificates | Create Certificate |
| ProviderApi | [**ProvidersDelete**](docs/api/ProviderApi.md#ProvidersDelete) | **Delete** /providers/{providerId} | Delete Provider |
| ProviderApi | [**ProvidersFindById**](docs/api/ProviderApi.md#ProvidersFindById) | **Get** /providers/{providerId} | Retrieve Provider |
| ProviderApi | [**ProvidersGet**](docs/api/ProviderApi.md#ProvidersGet) | **Get** /providers | Retrieve all Provider |
| ProviderApi | [**ProvidersPatch**](docs/api/ProviderApi.md#ProvidersPatch) | **Patch** /providers/{providerId} | Updates Provider |
| ProviderApi | [**ProvidersPost**](docs/api/ProviderApi.md#ProvidersPost) | **Post** /providers | Create Provider |

</details>

## Documentation For Models

All URIs are relative to *https://certificate-manager.de-fra.ionos.com*
<details >
<summary title="Click to toggle">API models list</summary>

- [AutoCertificate](docs/models/AutoCertificate)
- [AutoCertificateCreate](docs/models/AutoCertificateCreate)
- [AutoCertificatePatch](docs/models/AutoCertificatePatch)
- [AutoCertificateRead](docs/models/AutoCertificateRead)
- [AutoCertificateReadList](docs/models/AutoCertificateReadList)
- [AutoCertificateReadListAllOf](docs/models/AutoCertificateReadListAllOf)
- [Certificate](docs/models/Certificate)
- [CertificateCreate](docs/models/CertificateCreate)
- [CertificatePatch](docs/models/CertificatePatch)
- [CertificateRead](docs/models/CertificateRead)
- [CertificateReadList](docs/models/CertificateReadList)
- [CertificateReadListAllOf](docs/models/CertificateReadListAllOf)
- [Connection](docs/models/Connection)
- [DayOfTheWeek](docs/models/DayOfTheWeek)
- [Error](docs/models/Error)
- [ErrorMessages](docs/models/ErrorMessages)
- [Links](docs/models/Links)
- [MaintenanceWindow](docs/models/MaintenanceWindow)
- [Metadata](docs/models/Metadata)
- [MetadataWithAutoCertificateInformation](docs/models/MetadataWithAutoCertificateInformation)
- [MetadataWithAutoCertificateInformationAllOf](docs/models/MetadataWithAutoCertificateInformationAllOf)
- [MetadataWithCertificateInformation](docs/models/MetadataWithCertificateInformation)
- [MetadataWithCertificateInformationAllOf](docs/models/MetadataWithCertificateInformationAllOf)
- [MetadataWithStatus](docs/models/MetadataWithStatus)
- [MetadataWithStatusAllOf](docs/models/MetadataWithStatusAllOf)
- [Pagination](docs/models/Pagination)
- [PatchName](docs/models/PatchName)
- [Provider](docs/models/Provider)
- [ProviderCreate](docs/models/ProviderCreate)
- [ProviderExternalAccountBinding](docs/models/ProviderExternalAccountBinding)
- [ProviderPatch](docs/models/ProviderPatch)
- [ProviderRead](docs/models/ProviderRead)
- [ProviderReadList](docs/models/ProviderReadList)
- [ProviderReadListAllOf](docs/models/ProviderReadListAllOf)


[[Back to API list]](#documentation-for-api-endpoints) [[Back to Model list]](#documentation-for-models)

</details>
2 changes: 1 addition & 1 deletion client.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion configuration.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion docs/api/AutoCertificateApi.md
Original file line number Diff line number Diff line change
Expand Up @@ -371,7 +371,7 @@ import (
)

func main() {
autoCertificateCreate := *openapiclient.NewAutoCertificateCreate(*openapiclient.NewAutoCertificate("b471cd03-ef51-52c5-91a5-49195b0a04d4", "www.example.com", "rsa4096")) // AutoCertificateCreate | AutoCertificate to create.
autoCertificateCreate := *openapiclient.NewAutoCertificateCreate(*openapiclient.NewAutoCertificate("b471cd03-ef51-52c5-91a5-49195b0a04d4", "www.example.com", "rsa4096", "My Auto renewed certificate")) // AutoCertificateCreate | AutoCertificate to create.

configuration := ionoscloud.NewConfiguration("USERNAME", "PASSWORD", "TOKEN", "HOST_URL")
apiClient := ionoscloud.NewAPIClient(configuration)
Expand Down
9 changes: 2 additions & 7 deletions docs/models/AutoCertificate.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,14 @@
|**Provider** | **string** | The certificate provider used to issue the certificates. | |
|**CommonName** | **string** | The common name (DNS) of the certificate to issue. The common name needs to be part of a zone in IONOS Cloud DNS. | |
|**KeyAlgorithm** | **string** | The key algorithm used to generate the certificate. | |
|**Name** | Pointer to **string** | A certificate name used for management purposes. | [optional] |
|**Name** | **string** | A certificate name used for management purposes. | |
|**SubjectAlternativeNames** | Pointer to **[]string** | Optional additional names to be added to the issued certificate. The additional names needs to be part of a zone in IONOS Cloud DNS. | [optional] |

## Methods

### NewAutoCertificate

`func NewAutoCertificate(provider string, commonName string, keyAlgorithm string, ) *AutoCertificate`
`func NewAutoCertificate(provider string, commonName string, keyAlgorithm string, name string, ) *AutoCertificate`

NewAutoCertificate instantiates a new AutoCertificate object
This constructor will assign default values to properties that have it defined,
Expand Down Expand Up @@ -108,11 +108,6 @@ and a boolean to check if the value has been set.

SetName sets Name field to given value.

### HasName

`func (o *AutoCertificate) HasName() bool`

HasName returns a boolean if a field has been set.

### GetSubjectAlternativeNames

Expand Down
5 changes: 3 additions & 2 deletions model_auto_certificate.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

0 comments on commit ac830a0

Please sign in to comment.