Go server SDK for IBM Cloud Event Notifications service

IBM Cloud Event Notifications Go Admin SDK

Go client library to interact with the various IBM Cloud Event Notifications APIs.

Disclaimer: this SDK is being released initially as a pre-release version. Changes might occur which impact applications that use this SDK.

Table of Contents

Overview

The IBM Cloud Event Notifications Go SDK allows developers to programmatically interact with Event Notifications service in IBM cloud.

Service Name Package name

Event Notifications Service | eventnotificationsv1

Prerequisites

  • An IBM Cloud account.
  • An Event Notifications Instance
  • Go version 1.16 or above.

Installation

Install using the command.

go get -u github.com/IBM/event-notifications-go-admin-sdk

Go modules

If your application uses Go modules for dependency management (recommended), just add an import for each service that you will use in your application.
Here is an example:

import (
	"github.com/IBM/event-notifications-go-admin-sdk/eventnotificationsv1"
)

Next, run go build or go mod tidy to download and install the new dependencies and update your application's go.mod file.

In the example above, the eventnotificationsv1 part of the import path is the package name associated with the Example Service service. See the service table above to find the approprate package name for the services used by your application.

Initialize SDK

Initialize the sdk to connect with your Event Notifications service instance.

func initInstance() *eventnotificationsv1.EventNotificationsV1 {

    // IAM API key based authentication
	authenticator := &core.IamAuthenticator{
		ApiKey: <apikey>,
		URL:    <IBM Cloud URL to generate Token>,
	}

	// Set the options for the Event notification instance.
	options := &eventnotificationsv1.EventNotificationsV1Options{
		Authenticator: authenticator,
		URL:           "https://" + region + ".event-notifications.cloud.ibm.com/event-notifications",
	}
	eventNotificationsAPIService, err := eventnotificationsv1.NewEventNotificationsV1(options)
	if err != nil {
		panic(err)
	}
	return eventNotificationsAPIService

}
  • region : Region of the Event Notifications Instance

Using the SDK

SDK Methods to consume

Source

List Sources

listSourcesOptions := eventNotificationsAPIService.NewListSourcesOptions(
	<instance-id>, // Event notifications service instance GUID
)

sourceList, response, err := eventNotificationsAPIService.ListSource(listSourcesOptions)

if err != nil {
	panic(err)
}

b, _ := json.MarshalIndent(sourceList, "", "  ")
fmt.Println(string(b))

Get Sources

getSourceOptions := eventNotificationsAPIService.NewGetSourceOptions(
	<instance-id>, // Event notifications service instance GUID
	<source-id>,   // Event notifications service instance Source ID
)

source, response, err := eventNotificationsAPIService.GetSource(getSourceOptions)

if err != nil {
	panic(err)
}

b, _ := json.MarshalIndent(source, "", "  ")
fmt.Println(string(b))

Topics

Create Topic

rulesModel := &eventnotificationsv1.Rules{
	Enabled:            core.BoolPtr(false),
	EventTypeFilter:    core.StringPtr("$.notification_event_info.event_type == 'cert_manager'"), // Add your event type filter here.
	NotificationFilter: core.StringPtr("$.notification.findings[0].severity == 'MODERATE'"), // Add your notification filter here.
}

topicUpdateSourcesItemModel := &eventnotificationsv1.TopicUpdateSourcesItem{
	ID:    core.StringPtr(<source-id>),
	Rules: []eventnotificationsv1.Rules{*rulesModel},
}

createTopicOptions := &eventnotificationsv1.CreateTopicOptions{
	InstanceID:  core.StringPtr(<instance-id>),
	Name:        core.StringPtr(<topic-name>]),
	Description: core.StringPtr(<topic-description>),
	Sources:     []eventnotificationsv1.TopicUpdateSourcesItem{*topicUpdateSourcesItemModel},
}

topic, response, err := eventNotificationsAPIService.CreateTopic(createTopicOptions)

if err != nil {
	panic(err)
}

b, _ := json.MarshalIndent(topic, "", "  ")
fmt.Println(string(b))

List Topics

listTopicsOptions := eventNotificationsAPIService.NewListTopicsOptions(
	<instance-id>,
)

topicList, response, err := eventNotificationsAPIService.ListTopic(listTopicsOptions)

if err != nil {
	panic(err)
}

b, _ := json.MarshalIndent(topicList, "", "  ")
fmt.Println(string(b))

Get Topic

getTopicOptions := eventNotificationsAPIService.NewGetTopicOptions(
	<instance-id>, // Event notifications service instance GUID
	<topic-id>, // Event notifications service instance Topic ID
)

topic, response, err := eventNotificationsAPIService.GetTopic(getTopicOptions)

if err != nil {
	panic(err)
}

b, _ := json.MarshalIndent(topic, "", "  ")
fmt.Println(string(b))

Update Topic

rulesModel := &eventnotificationsv1.Rules{
	Enabled:            core.BoolPtr(true),
	EventTypeFilter:    core.StringPtr("$.notification_event_info.event_type == 'core_cert_manager'"), // Add your event type filter here.
	NotificationFilter: core.StringPtr("$.notification.findings[0].severity == 'SEVERE'"), // Add your notification filter here.
}

topicUpdateSourcesItemModel := &eventnotificationsv1.TopicUpdateSourcesItem{
	ID:    core.StringPtr(<source-id>),  // Event notifications service instance Source ID
	Rules: []eventnotificationsv1.Rules{*rulesModel},
}

replaceTopicOptions := &eventnotificationsv1.ReplaceTopicOptions{
	InstanceID:  core.StringPtr(<instance-id>), // Event notifications service instance GUID
	ID:          core.StringPtr(<topic-id>),    // Event notifications service instance Topic ID
	Name:        core.StringPtr(<topic-update-name>),  // Event notifications service instance Topic Name
	Description: core.StringPtr(<topic-update-description>), // Event notifications service instance Topic description
	Sources:     []eventnotificationsv1.TopicUpdateSourcesItem{*topicUpdateSourcesItemModel},
}

topic, response, err := eventNotificationsInstance.ReplaceTopic(replaceTopicOptions)

if err != nil {
	panic(err)
}

b, _ := json.MarshalIndent(topic, "", "  ")
fmt.Println(string(b))

Delete Topic

deleteTopicOptions := eventNotificationsAPIService.NewDeleteTopicOptions(
	<instance-id>,
	<topic-id>,
)

response, err := eventNotificationsAPIService.DeleteTopic(deleteTopicOptions)

if err != nil {
	panic(err)
}

Destinations

Create Destination

createDestinationOptions := eventNotificationsAPIService.NewCreateDestinationOptions(
	<instance-id>,
	<destination-name>,
	<destination-type>,
)
destinationConfigParamsModel := &eventnotificationsv1.DestinationConfigParamsWebhookDestinationConfig{
	URL:              core.StringPtr(<destination-config-url>),
	Verb:             core.StringPtr(<destination-config-verb>),
	CustomHeaders:    make(map[string]string),
	SensitiveHeaders: []string{<header-key>},
}
destinationConfigModel := &eventnotificationsv1.DestinationConfig{
	Params: destinationConfigParamsModel,
}
createDestinationOptions.SetConfig(destinationConfigModel)

destination, response, err := eventNotificationsAPIService.CreateDestination(createDestinationOptions)

if err != nil {
	panic(err)
}

b, _ := json.MarshalIndent(destination, "", "  ")
fmt.Println(string(b))

List Destinations

listDestinationsOptions := eventNotificationsAPIService.NewListDestinationsOptions(
	<instance-id>,
)

destinationList, response, err := eventNotificationsAPIService.ListDestinations(listDestinationsOptions)
if err != nil {
	panic(err)
}

b, _ := json.MarshalIndent(destinationList, "", "  ")
fmt.Println(string(b))

Get Destination

getDestinationOptions := eventNotificationsAPIService.NewGetDestinationOptions(
	<instance-id>,       // Event notifications service instance GUID
	<destination-id>,    // Event notifications service instance Destination ID
)

destination, response, err := eventNotificationsAPIService.GetDestination(getDestinationOptions)

if err != nil {
	panic(err)
}

b, _ := json.MarshalIndent(destination, "", "  ")
fmt.Println(string(b))

Update Destination

destinationConfigParamsModel := &eventnotificationsv1.DestinationConfigParamsWebhookDestinationConfig{
	URL:              core.StringPtr(<destination-config-update-url>),
	Verb:             core.StringPtr(<destination-config-update-verb>),
	CustomHeaders:    make(map[string]string),
	SensitiveHeaders: []string{<header-key>},
}

destinationConfigModel := &eventnotificationsv1.DestinationConfig{
	Params: destinationConfigParamsModel,
}

updateDestinationOptions := eventNotificationsAPIService.NewUpdateDestinationOptions(
	<instance-id>,      // Event notifications service instance GUID
	<destination-id>,   // Event notifications service instance Destination ID
)

updateDestinationOptions.SetName(<destination-update-name>)
updateDestinationOptions.SetDescription(<destination-update-description>)
updateDestinationOptions.SetConfig(destinationConfigModel)

destination, response, err := eventNotificationsAPIService.UpdateDestination(updateDestinationOptions)

if err != nil {
	panic(err)
}

b, _ := json.MarshalIndent(destination, "", "  ")
fmt.Println(string(b))

Delete Destination

deleteDestinationOptions := eventNotificationsAPIService.NewDeleteDestinationOptions(
	<instance-id>,		// Event notifications service instance GUID
	<destination-id>,	// Event notifications service instance Destination ID
)

response, err := eventNotificationsAPIService.DeleteDestination(deleteDestinationOptions)

if err != nil {
	panic(err)
}

Subscriptions

Create Subscription

`While Creating Subscription use any of one option from webhook, email or Sms`

createSubscriptionOptions := eventNotificationsAPIService.NewCreateSubscriptionOptions(
	<instance-id>,	// Event notifications service instance GUID
)

subscriptionCreateAttributesModel := &eventnotificationsv1.SubscriptionCreateAttributes{
	SigningEnabled: core.BoolPtr(false),
}

createSubscriptionOptions.SetAttributes(subscriptionCreateAttributesModel)
createSubscriptionOptions.SetDescription(<subscription-description>)
createSubscriptionOptions.SetDestinationID(<destination-id>)	// Event notifications service instance Destination ID
createSubscriptionOptions.SetName(<subscription-name>)
createSubscriptionOptions.SetTopicID(<topic-id>)	// Event notifications service instance Topic ID

subscription, response, err := eventNotificationsAPIService.CreateSubscription(createSubscriptionOptions)

if err != nil {
	panic(err)
}

b, _ := json.MarshalIndent(subscription, "", "  ")
fmt.Println(string(b))

List Subscriptions

listSubscriptionsOptions := eventNotificationsAPIService.NewListSubscriptionsOptions(
	<instance-id>,	// Event notifications service instance GUID
)

subscriptionList, response, err := eventNotificationsAPIService.ListSubscriptions(listSubscriptionsOptions)

if err != nil {
	panic(err)
}

b, _ := json.MarshalIndent(subscriptionList, "", "  ")
fmt.Println(string(b))

Get Subscription

getSubscriptionOptions := eventNotificationsAPIService.NewGetSubscriptionOptions(
	<instance-id>,	// Event notifications service instance GUID
	<subscription-id>,	// Event notifications service instance Subscription ID
)

subscription, response, err := eventNotificationsAPIService.GetSubscription(getSubscriptionOptions)

if err != nil {
	panic(err)
}

b, _ := json.MarshalIndent(subscription, "", "  ")
fmt.Println(string(b))

Update Subscription

updateSubscriptionOptions := eventNotificationsAPIService.NewUpdateSubscriptionOptions(
	<instance-id>,	// Event notifications service instance GUID
	<subscription-id>,	// Event notifications service instance Subscription ID
)

subscriptionUpdateAttributesModel := &eventnotificationsv1.SubscriptionUpdateAttributesWebhookAttributes{
	SigningEnabled: core.BoolPtr(true),
}

updateSubscriptionOptions.SetAttributes(subscriptionUpdateAttributesModel)
updateSubscriptionOptions.SetDescription(<subscription-update-description>)
updateSubscriptionOptions.SetName(<subscription-update-name>)

subscription, response, err := eventNotificationsAPIService.UpdateSubscription(updateSubscriptionOptions)

if err != nil {
	panic(err)
}

b, _ := json.MarshalIndent(subscription, "", "  ")
fmt.Println(string(b))

Delete Subscription

deleteSubscriptionOptions := eventNotificationsAPIService.NewDeleteSubscriptionOptions(
	<instance-id>,	// Event notifications service instance GUID
	<subscription-id>,	// Event notifications service instance Subscriptions ID
)

response, err := eventNotificationsAPIService.DeleteSubscription(deleteSubscriptionOptions)

if err != nil {
	panic(err)
}

Set Environment

Find event_notifications.env.hide in the repo and rename it to event_notifications.env. After that add the values for,

  • EVENT_NOTIFICATIONS_URL - Add the Event Notifications service instance Url.
  • EVENT_NOTIFICATIONS_APIKEY - Add the Event Notifications service instance apikey.
  • EVENT_NOTIFICATIONS_GUID - Add the Event Notifications service instance GUID.

Optional

  • EVENT_NOTIFICATIONS_AUTH_URL - Add the IAM url if you are using IBM test cloud.

Questions

If you are having difficulties using this SDK or have a question about the IBM Cloud services, please ask a question at Stack Overflow.

Open source @ IBM

Find more open source projects on the IBM Github Page

Contributing

See CONTRIBUTING.

License

This SDK project is released under the Apache 2.0 license. The license's full text can be found in LICENSE.

Owner
Comments
  • chore: add PagerDuty destination

    chore: add PagerDuty destination

    PR summary

    Fixes: <! -- link to issue -->

    PR Checklist

    Please make sure that your PR fulfills the following requirements:

    • [x] The commit message follows the Go Commit Message Guidelines.
    • [x] Tests for the changes have been added (for bug fixes / features)
    • [x] Docs have been added / updated (for bug fixes / features)

    PR Type

    • [ ] Bugfix
    • [x] Feature
    • [ ] Code style update (formatting, local variables)
    • [ ] Refactoring (no functional changes, no api changes)
    • [ ] New tests
    • [ ] Build/CI related changes
    • [ ] Documentation content changes
    • [ ] Other (please describe)

    What is the current behavior?

    Pagerduty destination support is not there

    What is the new behavior?

    added Pagerduty destination support

    Does this PR introduce a breaking change?

    • [ ] Yes
    • [x] No

    Other information

  • chore: sms opt in changes

    chore: sms opt in changes

    PR summary

    sms opt in changes

    Fixes: <! -- link to issue -->

    PR Checklist

    Please make sure that your PR fulfills the following requirements:

    • [x] The commit message follows the Angular Commit Message Guidelines.
    • [x] Tests for the changes have been added (for bug fixes / features)
    • [x] Docs have been added / updated (for bug fixes / features)

    PR Type

    • [ ] Bugfix
    • [x] Feature
    • [ ] Code style update (formatting, local variables)
    • [ ] Refactoring (no functional changes, no api changes)
    • [x] New tests
    • [ ] Build/CI related changes
    • [ ] Documentation content changes
    • [ ] Other (please describe)

    What is the current behavior?

    sms opt in feature was not there to meet standars

    What is the new behavior?

    added sms opt in feature

    Does this PR introduce a breaking change?

    • [ ] Yes
    • [x] No

    Other information

  • chore: update examples and test cases

    chore: update examples and test cases

    PR summary

    PR includes example updates and test cases for push destinations.

    Fixes: #5611

    PR Checklist

    Please make sure that your PR fulfills the following requirements:

    • [x] The commit message follows the Go Commit Message Guidelines.
    • [x] Tests for the changes have been added (for bug fixes / features)
    • [x] Docs have been added / updated (for bug fixes / features)

    PR Type

    • [x] Bugfix
    • [ ] Feature
    • [ ] Code style update (formatting, local variables)
    • [ ] Refactoring (no functional changes, no api changes)
    • [x] New tests
    • [ ] Build/CI related changes
    • [x] Documentation content changes
    • [ ] Other (please describe)

    What is the current behavior?

    Examples were not updated for push destinations

    What is the new behavior?

    included examples and test cases for push destinations

    Does this PR introduce a breaking change?

    • [ ] Yes
    • [x] No

    Other information

  • chore: updated readme on private end point

    chore: updated readme on private end point

    PR summary

    updated readme on private end points.

    Fixes: 5450

    PR Checklist

    Please make sure that your PR fulfills the following requirements:

    • [x] The commit message follows the Go Commit Message Guidelines.
    • [ ] Tests for the changes have been added (for bug fixes / features)
    • [x] Docs have been added / updated (for bug fixes / features)

    PR Type

    • [ ] Bugfix
    • [ ] Feature
    • [ ] Code style update (formatting, local variables)
    • [ ] Refactoring (no functional changes, no api changes)
    • [ ] New tests
    • [ ] Build/CI related changes
    • [x] Documentation content changes
    • [ ] Other (please describe)

    What is the current behavior?

    More explanation on private end point was missing.

    What is the new behavior?

    Given more details on private end point configuration

    Does this PR introduce a breaking change?

    • [ ] Yes
    • [x] No

    Other information

  • chore: fixed false positive audit checks

    chore: fixed false positive audit checks

    PR summary

    Fixed for false positive audit checks and updated accordingly.

    Fixes: <! -- link to issue -->

    PR Checklist

    Please make sure that your PR fulfills the following requirements:

    • [ ] The commit message follows the Go Commit Message Guidelines.
    • [x] Tests for the changes have been added (for bug fixes / features)
    • [x] Docs have been added / updated (for bug fixes / features)

    PR Type

    • [ ] Bugfix
    • [ ] Feature
    • [ ] Code style update (formatting, local variables)
    • [ ] Refactoring (no functional changes, no api changes)
    • [ ] New tests
    • [ ] Build/CI related changes
    • [ ] Documentation content changes
    • [x] Other (please describe)

    What is the current behavior?

    dummy values are used as secrets but detected as secrets in audit

    What is the new behavior?

    removed dummy values and considered as false positive.

    Does this PR introduce a breaking change?

    • [ ] Yes
    • [x] No

    Other information

  • chore: email opt in changes

    chore: email opt in changes

    Signed-off-by: Nitish Kulkarni [email protected]

    PR summary

    Fixes: Fixes: https://github.ibm.com/Notification-Hub/planning/issues/5151 https://github.ibm.com/Notification-Hub/planning/issues/5638

    PR Checklist

    Please make sure that your PR fulfills the following requirements:

    • [x] The commit message follows the Go Commit Message Guidelines.
    • [x] Tests for the changes have been added (for bug fixes / features)
    • [x] Docs have been added / updated (for bug fixes / features)

    PR Type

    • [ ] Bugfix
    • [x] Feature
    • [ ] Code style update (formatting, local variables)
    • [ ] Refactoring (no functional changes, no api changes)
    • [ ] New tests
    • [ ] Build/CI related changes
    • [ ] Documentation content changes
    • [ ] Other (please describe)

    What is the current behavior?

    opt in for email in not present.

    What is the new behavior?

    added with optin for email as EN comply with regulatory standards

    Does this PR introduce a breaking change?

    • [ ] Yes
    • [x] No

    Other information

  • chore: add cloud functions destination support

    chore: add cloud functions destination support

    PR summary

    Includes the changes of cloud functions as a destination

    Fixes: #4861

    PR Checklist

    Please make sure that your PR fulfills the following requirements:

    • [x] The commit message follows the Angular Commit Message Guidelines.
    • [x] Tests for the changes have been added (for bug fixes / features)
    • [x] Docs have been added / updated (for bug fixes / features)

    PR Type

    • [ ] Bugfix
    • [x] Feature
    • [ ] Code style update (formatting, local variables)
    • [ ] Refactoring (no functional changes, no api changes)
    • [ ] New tests
    • [ ] Build/CI related changes
    • [x] Documentation content changes
    • [ ] Other (please describe)

    What is the current behavior?

    no cloud functions destination suppport

    What is the new behavior?

    we can configure the cloud functions as a destination in EN

    Does this PR introduce a breaking change?

    • [ ] Yes
    • [x] No

    Other information

  • chore: add device count API, apispeclint errors fix and preprod

    chore: add device count API, apispeclint errors fix and preprod

    PR summary

    Includes changes of Device count API, API spec lint errors fix, modification for EN Doc and pre prod

    Fixes: #4555, #4280, #4455

    PR Checklist

    Please make sure that your PR fulfills the following requirements:

    • [x] The commit message follows the Angular Commit Message Guidelines.
    • [x] Tests for the changes have been added (for bug fixes / features)
    • [x] Docs have been added / updated (for bug fixes / features)

    PR Type

    • [x] Bugfix
    • [ ] Feature
    • [ ] Code style update (formatting, local variables)
    • [ ] Refactoring (no functional changes, no api changes)
    • [x] New tests
    • [ ] Build/CI related changes
    • [x] Documentation content changes
    • [ ] Other (please describe)

    What is the current behavior?

    Device Count API is not there. list of Destination devices and Retrieves report of destination devices registered are present to be removed. Tag subscription API are listing under Destination tag subscription. Tags are unordered. Lint errors.

    What is the new behavior?

    separation of binary mode from notification payload. Remove get list of Destination devices and Retrieves report of destination devices registered. Add new header Push Destination API’s - to list all the tags and device count under this. New Device count API Reordering of tags from Push Destination API’s (create, update, delete and listing) Lint errors fixes.

    Does this PR introduce a breaking change?

    • [ ] Yes
    • [x] No

    Other information

    signed-off-by: Nitish Kulkarni [email protected]

  • Bulk

    Bulk

    PR summary

    Fixes: <! -- link to issue -->

    PR Checklist

    Please make sure that your PR fulfills the following requirements:

    • [ ] The commit message follows the Go Commit Message Guidelines.
    • [ ] Tests for the changes have been added (for bug fixes / features)
    • [ ] Docs have been added / updated (for bug fixes / features)

    PR Type

    • [ ] Bugfix
    • [ ] Feature
    • [ ] Code style update (formatting, local variables)
    • [ ] Refactoring (no functional changes, no api changes)
    • [ ] New tests
    • [ ] Build/CI related changes
    • [ ] Documentation content changes
    • [ ] Other (please describe)

    What is the current behavior?

    What is the new behavior?

    Does this PR introduce a breaking change?

    • [ ] Yes
    • [ ] No

    Other information

Go-serverless-eth-event-listener - Go serverless, ethereum contract event listener with a sample contract

go-serverless-eth-event-listener This repository is for showing how to listen sm

May 19, 2022
A go sdk for baidu netdisk open platform 百度网盘开放平台 Go SDK

Pan Go Sdk 该代码库为百度网盘开放平台Go语言的SDK

Nov 22, 2022
Nextengine-sdk-go: the NextEngine SDK for the Go programming language

NextEngine SDK for Go nextengine-sdk-go is the NextEngine SDK for the Go programming language. Getting Started Install go get github.com/takaaki-s/nex

Dec 7, 2021
Commercetools-go-sdk is fork of original commercetools-go-sdk

commercetools-go-sdk The Commercetools Go SDK is automatically generated based on the official API specifications of Commercetools. It should therefor

Dec 13, 2021
Sdk-go - Go version of the Synapse SDK

synapsesdk-go Synapse Protocol's Go SDK. Currently in super duper alpha, do not

Jan 7, 2022
Redash-go-sdk - An SDK for the programmatic management of Redash, in Go
Redash-go-sdk - An SDK for the programmatic management of Redash, in Go

Redash Go SDK An SDK for the programmatic management of Redash. The main compone

Dec 13, 2022
Alibaba Cloud foasconsole SDK for Go

English | 简体中文 Alibaba Cloud foasconsole SDK for Go Requirements It's necessary for you to make sure your system have installed Go environment which v

Nov 1, 2021
Alibaba Cloud RMC SDK for Go

English | 简体中文 Alibaba Cloud RMC SDK for Go Requirements It's necessary for you to make sure your system have installed Go environment which version g

Nov 5, 2021
Alibaba Cloud BatchCompute SDK for Go

English | 简体中文 Alibaba Cloud BatchCompute SDK for Go Requirements It's necessary for you to make sure your system have installed Go environment which

Nov 15, 2021
Alibaba Cloud GEMP SDK for Go

English | 简体中文 Alibaba Cloud GEMP SDK for Go Requirements It's necessary for you to make sure your system have installed Go environment which version

Nov 16, 2021
Alibaba Cloud PTS SDK for Go
Alibaba Cloud PTS SDK for Go

Alibaba Cloud PTS SDK for Go

Dec 27, 2021
Alibaba Cloud xixikf SDK for Go

English | 简体中文 Alibaba Cloud xixikf SDK for Go Requirements It's necessary for you to make sure your system have installed Go environment which versio

Nov 25, 2021
Alibaba Cloud sae SDK for Go

English | 简体中文 Alibaba Cloud sae SDK for Go Requirements It's necessary for you to make sure your system have installed Go environment which version g

Nov 26, 2021
Alibaba Cloud Eipanycast SDK for Go

English | 简体中文 Alibaba Cloud Eipanycast SDK for Go Requirements It's necessary for you to make sure your system have installed Go environment which ve

Dec 16, 2021
Alibaba Cloud BPStudio SDK for Go

English | 简体中文 Alibaba Cloud BPStudio SDK for Go Requirements It's necessary for you to make sure your system have installed Go environment which vers

Nov 26, 2021
Alibaba Cloud dplus SDK for Go

English | 简体中文 Alibaba Cloud dplus SDK for Go Requirements It's necessary for you to make sure your system have installed Go environment which version

Jan 6, 2022
Alibaba Cloud cms-export SDK for Go

English | 简体中文 Alibaba Cloud cms-export SDK for Go Requirements It's necessary for you to make sure your system have installed Go environment which ve

Jan 10, 2022
Alibaba Cloud jarvis-public SDK for Go

English | 简体中文 Alibaba Cloud jarvis-public SDK for Go Requirements It's necessary for you to make sure your system have installed Go environment which

Jan 19, 2022
Schedulerx2-20190430 - Alibaba Cloud schedulerx2 SDK for Go

English | 简体中文 Alibaba Cloud schedulerx2 SDK for Go Requirements It's necessary

Jan 25, 2022