Go client library to interact with the various IBM Cloud Networking Service APIs.
- Overview
- Prerequisites
- Installation
- Using the SDK
- Questions
- Issues
- Open source @ IBM
- Contributing
- License
The IBM Cloud Networking Go SDK allows developers to programmatically interact with the following IBM Cloud services:
Service Name | Package name |
---|---|
Transit Gateway Service | transitgatewayapisv1 |
Direct Link Service | directlinkv1 |
Direct Link Provider Service | directlinkproviderv2 |
CIS: Cache | cachingapiv1 |
CIS: IP | cisipapiv1 |
CIS: Custom Pages | custompagesv1 |
CIS: DNS Records Bulk | dnsrecordbulkv1 |
CIS: DNS Records | dnsrecordsv1 |
CIS: Firewall Access Rules | firewallaccessrulesv1 |
CIS: Security Level Settings | firewallapiv1 |
CIS: GLB Events | globalloadbalancereventsv1 |
CIS: GLB Monitor | globalloadbalancermonitorv1 |
CIS: GLB Pools | globalloadbalancerpoolsv0 |
CIS: GLB Service | globalloadbalancerv1 |
CIS: Page Rules | pageruleapiv1 |
CIS: Range Application | rangeapplicationsv1 |
CIS: Routing | routingv1 |
CIS: Rulesets | rulesetsv1 |
CIS: Security Events | securityeventsapiv1 |
CIS: SSL/TLS | sslcertificateapiv1 |
CIS: User Agent Blocking Rules | useragentblockingrulesv1 |
CIS: WAF Settings | wafapiv1 |
CIS: WAF Rule Groups | wafrulegroupsapiv1 |
CIS: WAF Rule Packages | wafrulepackagesapiv1 |
CIS: WAF Rules | wafrulesapiv1 |
CIS: Zone Firewall Access Rules | zonefirewallaccessrulesv1 |
CIS: Zone Lockdown | zonelockdownv1 |
CIS: Zone Rate Limits | zoneratelimitsv1 |
CIS: Zone Settings | zonessettingsv1 |
CIS: Zones | zonesv1 |
PDNS: DNS Zones | |
PDNS: Resource Records | |
PDNS: Permitted Networks | |
PDNS: Global Load Balancers | |
PDNS: DNS Services | dnssvcsv1 |
- An IBM Cloud account.
- An IAM API key to allow the SDK to access your account. Create one here.
- Go version 1.12 or above.
The current version of this SDK: 0.49.0
There are a few different ways to download and install the Networking Go SDK project for use by your Go application:
Use this command to download and install the SDK to allow your Go application to use it:
go get -u github.com/IBM/networking-go-sdk
If your application is using Go modules, you can add a suitable import to your Go application, like this:
import (
"github.com/IBM/networking-go-sdk/transitgatewayapisv1"
"github.com/IBM/networking-go-sdk/directlinkv1"
"github.com/IBM/networking-go-sdk/directlinkproviderv2"
"github.com/IBM/networking-go-sdk/cachingapiv1"
"github.com/IBM/networking-go-sdk/cisipapiv1"
"github.com/IBM/networking-go-sdk/custompagesv1"
"github.com/IBM/networking-go-sdk/dnsrecordbulkv1"
"github.com/IBM/networking-go-sdk/dnsrecordsv1"
"github.com/IBM/networking-go-sdk/firewallaccessrulesv1"
"github.com/IBM/networking-go-sdk/firewallapiv1"
"github.com/IBM/networking-go-sdk/globalloadbalancereventsv1"
"github.com/IBM/networking-go-sdk/globalloadbalancermonitorv1"
"github.com/IBM/networking-go-sdk/globalloadbalancerpoolsv0"
"github.com/IBM/networking-go-sdk/globalloadbalancerv1"
"github.com/IBM/networking-go-sdk/pageruleapiv1"
"github.com/IBM/networking-go-sdk/rangeapplicationsv1"
"github.com/IBM/networking-go-sdk/routingv1"
"github.com/IBM/networking-go-sdk/rulestsv1"
"github.com/IBM/networking-go-sdk/securityeventsapiv1"
"github.com/IBM/networking-go-sdk/sslcertificateapiv1"
"github.com/IBM/networking-go-sdk/useragentblockingrulesv1"
"github.com/IBM/networking-go-sdk/wafapiv1"
"github.com/IBM/networking-go-sdk/wafrulegroupsapiv1"
"github.com/IBM/networking-go-sdk/wafrulepackagesapiv1"
"github.com/IBM/networking-go-sdk/wafrulesapiv1"
"github.com/IBM/networking-go-sdk/zonefirewallaccessrulesv1"
"github.com/IBM/networking-go-sdk/zonelockdownv1"
"github.com/IBM/networking-go-sdk/zoneratelimitsv1"
"github.com/IBM/networking-go-sdk/zonessettingsv1"
"github.com/IBM/networking-go-sdk/zonesv1"
"github.com/IBM/networking-go-sdk/dnszonesv1"
"github.com/IBM/networking-go-sdk/resourcerecordsv1"
"github.com/IBM/networking-go-sdk/permittednetworksfordnszonesv1"`
"github.com/IBM/networking-go-sdk/globalloadbalancersv1"
"github.com/IBM/networking-go-sdk/dnssvcsv1"
)
then run go mod tidy
to download and install the new dependency and update your Go application's
go.mod
file.
If your application is using the dep
dependency management tool, you can add a dependency
to your Gopkg.toml
file. Here is an example:
[[constraint]]
name = "github.com/IBM/networking-go-sdk"
version = "0.49.0"
then run dep ensure
.
For general SDK usage information, please see this link
If you are having difficulties using this SDK or have a question about the IBM Cloud services, please ask a question at Stack Overflow.
If you encounter an issue with the project, you are welcome to submit a bug report. Before that, please search for similar issues. It's possible that someone has already reported the problem.
For deprecation notice, please see this link
Find more open source projects on the IBM Github Page
See CONTRIBUTING.
This SDK project is released under the Apache 2.0 license. The license's full text can be found in LICENSE.