Skip to content

eon-io/eon-sdk-go

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Go API client for eon

The Eon.io REST API

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: 1.0.0
  • Package version: 0.0.1
  • Generator version: 7.6.0-SNAPSHOT
  • Build package: org.openapitools.codegen.languages.GoClientCodegen

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 eon "github.com/eon.io/eon-service/services/frontend/api-gateway/sdk/external-go"

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 eon.ContextServerIndex of type int.

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

Templated Server URL

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

ctx := context.WithValue(context.Background(), eon.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 eon.ContextOperationServerIndices and eon.ContextOperationServerVariables context maps.

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

Documentation for API Endpoints

All URIs are relative to http://localhost

Class Method HTTP request Description
AccountsAPI ConnectRestoreAccount Post /v1/projects/{projectId}/restore-accounts Connect Restore Account
AccountsAPI ConnectSourceAccount Post /v1/projects/{projectId}/source-accounts Connect Source Account
AccountsAPI DeleteRestoreAccountConnectivityConfig Delete /v1/projects/{projectId}/restore-accounts/{accountId}/connectivity-config Delete Restore Account Connectivity Configuration
AccountsAPI DisconnectRestoreAccount Post /v1/projects/{projectId}/restore-accounts/{accountId}/disconnect Disconnect Restore Account
AccountsAPI DisconnectSourceAccount Post /v1/projects/{projectId}/source-accounts/{accountId}/disconnect Disconnect Source Account
AccountsAPI GetRestoreAccountConnectivityConfig Get /v1/projects/{projectId}/restore-accounts/{accountId}/connectivity-config Get Restore Account Connectivity Configuration
AccountsAPI ListRestoreAccounts Post /v1/projects/{projectId}/restore-accounts/list List Restore Accounts
AccountsAPI ListSourceAccounts Post /v1/projects/{projectId}/source-accounts/list List Source Accounts
AccountsAPI ReconnectRestoreAccount Post /v1/projects/{projectId}/restore-accounts/{accountId}/reconnect Reconnect Restore Account
AccountsAPI ReconnectSourceAccount Post /v1/projects/{projectId}/source-accounts/{accountId}/reconnect Reconnect Source Account
AccountsAPI UpdateRestoreAccountConnectivityConfig Put /v1/projects/{projectId}/restore-accounts/{accountId}/connectivity-config Update Restore Account Connectivity Configuration
AuthAPI GetAccessToken Post /v1/token Get Access Token
AuthAPI GetAccessTokenOAuth2 Post /v1/oauth2/token Get Access Token (OAuth2)
BackupPoliciesAPI CreateBackupPolicy Post /v1/projects/{projectId}/backup-policies Create Backup Policy
BackupPoliciesAPI DeleteBackupPolicy Delete /v1/projects/{projectId}/backup-policies/{backupPolicyId} Delete Backup Policy
BackupPoliciesAPI GetBackupPolicy Get /v1/projects/{projectId}/backup-policies/{backupPolicyId} Get Backup Policy
BackupPoliciesAPI ListBackupPolicies Post /v1/projects/{projectId}/backup-policies/list List Backup Policies
BackupPoliciesAPI UpdateBackupPolicy Put /v1/projects/{projectId}/backup-policies/{backupPolicyId} Update Backup Policy
DashboardAPI GetDailyStorageSummaries Get /v1/projects/{projectId}/dashboard/daily-storage-summary Get Daily Storage Summaries
DatabaseSnapshotsAPI GetQueryResult Get /v1/projects/{projectId}/queries/{queryId}/results Get Query Result
DatabaseSnapshotsAPI GetQueryStatus Get /v1/projects/{projectId}/queries/{queryId}/status Get Query Status
DatabaseSnapshotsAPI RunQuery Post /v1/projects/{projectId}/snapshots/{snapshotId}/databases/query Run Query
JobsAPI GetBackupJob Get /v1/projects/{projectId}/backup-jobs/{jobId} Get Backup Job
JobsAPI GetRestoreJob Get /v1/projects/{projectId}/restore-jobs/{jobId} Get Restore Job
JobsAPI ListBackupJobs Post /v1/projects/{projectId}/backup-jobs List Backup Jobs
JobsAPI ListRestoreJobs Post /v1/projects/{projectId}/restore-jobs List Restore Jobs
ResourcesAPI CancelResourceBackupExclusion Patch /v1/projects/{projectId}/resources/{id}/include Cancel Resource Backup Exclusion
ResourcesAPI ExcludeResourceFromBackup Patch /v1/projects/{projectId}/resources/{id}/exclude Exclude Resource from Backup
ResourcesAPI GetResource Get /v1/projects/{projectId}/resources/{id} Get Resource
ResourcesAPI ListResources Post /v1/projects/{projectId}/resources List Resources
ResourcesAPI OverrideDataClasses Patch /v1/projects/{projectId}/resources/{id}/data-classifications Override Data Classes
ResourcesAPI OverrideEnvironment Patch /v1/projects/{projectId}/resources/{id}/environments Override Environment
ResourcesAPI RemoveDataClassesOverride Delete /v1/projects/{projectId}/resources/{id}/data-classifications Remove Data Classes Override
ResourcesAPI RemoveEnvironmentOverride Delete /v1/projects/{projectId}/resources/{id}/environments Remove Environment Override
SnapshotsAPI GetSnapshot Get /v1/projects/{projectId}/snapshots/{id} Get Snapshot
SnapshotsAPI ListResourceSnapshots Post /v1/projects/{projectId}/resources/{id}/snapshots List Resource Snapshots
SnapshotsAPI RestoreBucket Post /v1/projects/{projectId}/resources/{id}/snapshots/{snapshotId}/restore-bucket Restore Bucket
SnapshotsAPI RestoreDatabase Post /v1/projects/{projectId}/resources/{id}/snapshots/{snapshotId}/restore-rds-instance Restore RDS Instance
SnapshotsAPI RestoreDynamoDBTable Post /v1/projects/{projectId}/resources/{id}/snapshots/{snapshotId}/restore-dynamo-db-table Restore DynamoDB Table
SnapshotsAPI RestoreEbsVolume Post /v1/projects/{projectId}/resources/{id}/snapshots/{snapshotId}/restore-ec2-ebs-volume Restore EBS Volume
SnapshotsAPI RestoreEc2Instance Post /v1/projects/{projectId}/resources/{id}/snapshots/{snapshotId}/restore-ec2-instance Restore EC2 Instance
SnapshotsAPI RestoreFiles Post /v1/projects/{projectId}/resources/{id}/snapshots/{snapshotId}/restore-files Restore Files
SnapshotsAPI RestoreToEbsSnapshot Post /v1/projects/{projectId}/resources/{id}/snapshots/{snapshotId}/convert-ec2-ebs-snapshot Restore to EBS Snapshot

Documentation For Models

Documentation For Authorization

Authentication schemes defined for the API:

ApiKeyAuth

  • Type: HTTP Bearer token authentication

Example

auth := context.WithValue(context.Background(), eon.ContextAccessToken, "BEARER_TOKEN_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

About

Official Go SDK for Eon

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •