Skip to content

CheckPointSW/perimeter-81-client-sdk

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

47 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Go API client for perimeter81sdk

The YAML for Harmony SASE Public 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: 2.3.0
  • Package version: 1.0.0
  • Generator version: 7.21.0
  • Build package: org.openapitools.codegen.languages.GoClientCodegen

Installation

Import the package in a go file in your project and run go mod tidy:

import perimeter81sdk "github.com/GIT_USER_ID/GIT_REPO_ID"

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

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

Templated Server URL

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

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

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

Documentation for API Endpoints

All URIs are relative to https://virtserver.swaggerhub.com/perimeter81/public-api-yaml/1.0.0

Class Method HTTP request Description
ApplicationAPI CreateApplication Post /v2.3/applications Create Application
ApplicationAPI GetApplicationById Get /v2.3/applications/{applicationId} Get Application by Id
ApplicationAPI GetApplicationStatus Get /v2.3/applications/status/{statusId} Get status of Application creation process by statusId
ApplicationAPI GetApplications Get /v2.3/applications Get Applications List
EnhancedNetworksAPI CreateEnhancedNetwork Post /v2.3/networks/enhanced Create enhanced network
EnhancedNetworksAPI DeleteEnhancedNetwork Delete /v2.3/networks/enhanced/{networkId} Delete enhanced network
EnhancedNetworksAPI EnhancedNetworksControllerV23GetNetworkCustomerCertificate Get /v2.3/networks/enhanced/network-customer-certificate Get network customer certificate
EnhancedNetworksAPI GetEnhancedNetwork Get /v2.3/networks/enhanced/{networkId} Get enhanced network by ID
EnhancedNetworksAPI GetEnhancedNetworkHealth Get /v2.3/networks/enhanced/{networkId}/health Get enhanced network health status
EnhancedNetworksAPI GetEnhancedNetworks Get /v2.3/networks/enhanced Get all enhanced networks
EnhancedNetworksAPI UpdateEnhancedNetwork Put /v2.3/networks/enhanced/{networkId} Update enhanced network
EnhancedRegionsAPI CreateEnhancedRegion Post /v2.3/networks/enhanced/{networkId}/regions Create enhanced region
EnhancedRegionsAPI DeleteEnhancedRegion Delete /v2.3/networks/enhanced/{networkId}/regions/{regionId} Delete enhanced region
EnhancedRegionsAPI EnhancedNetworksControllerV2GetRegions Get /v2.3/networks/enhanced/harmony-sase-regions List of available Harmony SASE regions that supports enhanced networks
EnhancedRegionsAPI GetEnhancedRegion Get /v2.3/networks/enhanced/{networkId}/regions/{regionId} Get region
EnhancedRegionsAPI IncreaseScaleUnit Put /v2.3/networks/enhanced/{networkId}/regions/{regionId}/scale-unit/increase Increase scale units
EnhancedRegionsAPI ListEnhancedRegions Get /v2.3/networks/enhanced/{networkId}/regions List regions
EnhancedRegionsAPI ReduceScaleUnit Put /v2.3/networks/enhanced/{networkId}/regions/{regionId}/scale-unit/reduce Reduce scale units
EnhancedRouteTablesAPI CreateDynamicRoute Post /v2.3/networks/enhanced/{networkId}/route-table/dynamic Create dynamic route
EnhancedRouteTablesAPI CreateStaticRoute Post /v2.3/networks/enhanced/{networkId}/route-table/static Create static route
EnhancedRouteTablesAPI DeleteRouteEntry Delete /v2.3/networks/enhanced/{networkId}/route-table/{routeId} Delete route entry
EnhancedRouteTablesAPI GetEnhancedRouteTable Get /v2.3/networks/enhanced/{networkId}/route-table Get route table
EnhancedRouteTablesAPI GetRouteEntry Get /v2.3/networks/enhanced/{networkId}/route-table/{routeId} Get route entry
EnhancedRouteTablesAPI UpdateRouteEntry Put /v2.3/networks/enhanced/{networkId}/route-table/{routeId} Update route entry
EnhancedTunnelsAPI CreateDynamicTunnel Post /v2.3/networks/enhanced/{networkId}/tunnels/ipsec/dynamic Create dynamic IPSec tunnel
EnhancedTunnelsAPI CreateStaticTunnel Post /v2.3/networks/enhanced/{networkId}/tunnels/ipsec/static Create static IPSec tunnel
EnhancedTunnelsAPI DeleteDynamicTunnel Delete /v2.3/networks/enhanced/{networkId}/tunnels/ipsec/dynamic/{dynamicTunnelId} Delete dynamic IPSec tunnel
EnhancedTunnelsAPI DeleteStaticTunnel Delete /v2.3/networks/enhanced/{networkId}/tunnels/ipsec/static/{tunnelId} Delete static IPSec tunnel
EnhancedTunnelsAPI GetDynamicTunnel Get /v2.3/networks/enhanced/{networkId}/tunnels/ipsec/dynamic/{dynamicTunnelId} Get dynamic IPSec tunnel
EnhancedTunnelsAPI GetEnhancedRegionTunnelsPerNetwork Get /v2.3/networks/enhanced/{networkId}/tunnels Get tunnels for a network
EnhancedTunnelsAPI GetEnhancedRegionTunnelsPerRegion Get /v2.3/networks/enhanced/{networkId}/regions/{regionId}/tunnels Get tunnels for a region
EnhancedTunnelsAPI GetStaticTunnel Get /v2.3/networks/enhanced/{networkId}/tunnels/ipsec/static/{tunnelId} Get static IPSec tunnel
EnhancedTunnelsAPI UpdateDynamicTunnel Put /v2.3/networks/enhanced/{networkId}/tunnels/ipsec/dynamic/{dynamicTunnelId} Update dynamic IPSec tunnel
EnhancedTunnelsAPI UpdateStaticTunnel Put /v2.3/networks/enhanced/{networkId}/tunnels/ipsec/static/{tunnelId} Update static IPSec tunnel
FirewallPolicyAPI GetFirewallPolicy Get /v2.3/networks/{networkId}/policy Get firewall policy by network Id
FirewallPolicyAPI UpdateFirewallPolicy Put /v2.3/networks/{networkId}/policy Update firewall policy by network ID
GatewaysAPI StandardGetInstance Get /v2.3/networks/standard/{networkId}/instances/{gatewayId} Get Instance of a GW by ID
GatewaysAPI StandardNetworksControllerV2AddNetworkInstance Post /v2.3/networks/standard/{networkId}/instances Add gateway
GatewaysAPI StandardNetworksControllerV2DeleteNetworkInstance Delete /v2.3/networks/standard/{networkId}/instances Remove Gateways from Network
IPSecRedundantAPI StandardCreateIPSecRedundantTunnel Post /v2.3/networks/standard/{networkId}/tunnels/ipsec/redundant Create a new IPSec Redundant tunnel
IPSecRedundantAPI StandardDeleteIPSecRedundantTunnel Delete /v2.3/networks/standard/{networkId}/tunnels/ipsec/redundant/{haTunnelId} Delete IPSec Redundant tunnel
IPSecRedundantAPI StandardGetIPSecRedundantTunnel Get /v2.3/networks/standard/{networkId}/tunnels/ipsec/redundant/{haTunnelId} Get one IPSec Redundant tunnel
IPSecRedundantAPI StandardUpdateIPSecRedundantTunnel Put /v2.3/networks/standard/{networkId}/tunnels/ipsec/redundant/{haTunnelId} Update a new IPSec Redundant tunnel
IPSecSingleAPI StandardCreateIPSecSingleTunnel Post /v2.3/networks/standard/{networkId}/tunnels/ipsec/single Create a new IPSec Single tunnel
IPSecSingleAPI StandardDeleteIPSecSingleTunnel Delete /v2.3/networks/standard/{networkId}/tunnels/ipsec/single/{tunnelId} Delete IPSec Single tunnel
IPSecSingleAPI StandardGetIPSecSingleTunnel Get /v2.3/networks/standard/{networkId}/tunnels/ipsec/single/{tunnelId} Get one IPSec Single tunnel
IPSecSingleAPI StandardUpdateIPSecSingleTunnel Put /v2.3/networks/standard/{networkId}/tunnels/ipsec/single/{tunnelId} Update IPSec Single Tunnel
NetworksAPI CreateIPSecRedundantTunnel Post /v2.3/networks/{networkId}/tunnels/ipsec/redundant Create a new IPSec Redundant tunnel
NetworksAPI CreateIPSecSingleTunnel Post /v2.3/networks/{networkId}/tunnels/ipsec/single Create a new IPSec Single tunnel
NetworksAPI CreateOpenVPNTunnel Post /v2.3/networks/{networkId}/tunnels/openvpn Create a new OpenVPN tunnel
NetworksAPI CreateWireguardTunnel Post /v2.3/networks/{networkId}/tunnels/wireguard Create a new Wireguard tunnel
NetworksAPI DeleteIPSecRedundantTunnel Delete /v2.3/networks/{networkId}/tunnels/ipsec/redundant/{haTunnelId} Delete IPSec Redundant tunnel
NetworksAPI DeleteIPSecSingleTunnel Delete /v2.3/networks/{networkId}/tunnels/ipsec/single/{tunnelId} Delete IPSec Single tunnel
NetworksAPI DeleteOpenVPNTunnel Delete /v2.3/networks/{networkId}/tunnels/openvpn/{tunnelId} Delete OpenVPN tunnel
NetworksAPI DeleteWireguardTunnel Delete /v2.3/networks/{networkId}/tunnels/wireguard/{tunnelId} Delete Wireguard tunnel
NetworksAPI GetIPSecRedundantTunnel Get /v2.3/networks/{networkId}/tunnels/ipsec/redundant/{haTunnelId} Get one IPSec Redundant tunnel
NetworksAPI GetIPSecSingleTunnel Get /v2.3/networks/{networkId}/tunnels/ipsec/single/{tunnelId} Get one IPSec Single tunnel
NetworksAPI GetInstance Get /v2.3/networks/{networkId}/instances/{gatewayId} Get Instance of a GW by ID
NetworksAPI GetNetworks Get /v2.3/networks Get all Networks
NetworksAPI GetOpenVPNTunnel Get /v2.3/networks/{networkId}/tunnels/openvpn/{tunnelId} Get one openVPN tunnel
NetworksAPI GetRegion Get /v2.3/networks/{networkId}/regions/{regionId} Get region by ID
NetworksAPI GetRouteTable Get /v2.3/networks/{networkId}/route-table Get route table
NetworksAPI GetStatus Get /v2.3/status Get system status
NetworksAPI GetWireguardTunnel Get /v2.3/networks/{networkId}/tunnels/wireguard/{tunnelId} Get a Wireguard tunnel
NetworksAPI NetworksControllerV2AddNetworkInstance Post /v2.3/networks/{networkId}/instances Add gateway
NetworksAPI NetworksControllerV2AddNetworkRegion Put /v2.3/networks/{networkId}/regions Add regions to a network
NetworksAPI NetworksControllerV2DeleteNetworkInstance Delete /v2.3/networks/{networkId}/instances Remove Gateways from Network
NetworksAPI NetworksControllerV2DeleteNetworkRegion Delete /v2.3/networks/{networkId}/regions Remove regions from network
NetworksAPI NetworksControllerV2GetNetworkHealth Get /v2.3/networks/{networkId}/health Get network health status
NetworksAPI NetworksControllerV2GetRegions Get /v2.3/networks/harmony-sase-regions List of available regions
NetworksAPI NetworksControllerV2NetworkCreate Post /v2.3/networks Create network
NetworksAPI NetworksControllerV2NetworkDelete Delete /v2.3/networks/{networkId} Delete network
NetworksAPI NetworksControllerV2NetworkFind Get /v2.3/networks/{networkId} Get network by Id
NetworksAPI NetworksControllerV2NetworkUpdate Put /v2.3/networks/{networkId} Update network
NetworksAPI NetworksControllerV2Status Get /v2.3/networks/status/{statusId} Get status of asynchronous operations.
NetworksAPI UpdateIPSecRedundantTunnel Put /v2.3/networks/{networkId}/tunnels/ipsec/redundant/{haTunnelId} Update a new IPSec Redundant tunnel
NetworksAPI UpdateIPSecSingleTunnel Put /v2.3/networks/{networkId}/tunnels/ipsec/single/{tunnelId} Update IPSec Single Tunnel
NetworksAPI UpdateOpenVPNTunnel Put /v2.3/networks/{networkId}/tunnels/openvpn/{tunnelId} Update openVPN Tunnel
NetworksAPI UpdateWireguardTunnel Put /v2.3/networks/{networkId}/tunnels/wireguard/{tunnelId} Update a Wireguard tunnel
ObjectsAddressesAPI DeleteObjectsAddresses Delete /v2.3/objects/addresses/{objectId} Delete Address object
ObjectsAddressesAPI GetObjectsAddresses Get /v2.3/objects/addresses Get object addresses
ObjectsAddressesAPI PostObjectsAddresses Post /v2.3/objects/addresses Create new Address object
ObjectsAddressesAPI PutObjectsAddresses Put /v2.3/objects/addresses/{objectId} Update Address object
ObjectsServicesAPI DeleteObjectsServices Delete /v2.3/objects/services/{objectId} Delete Service object
ObjectsServicesAPI GetObjectsServices Get /v2.3/objects/services Get object services
ObjectsServicesAPI PostObjectsServices Post /v2.3/objects/services Create new Service object
ObjectsServicesAPI PutObjectsServices Put /v2.3/objects/services/{objectId} Update Service object
OpenVPNAPI StandardCreateOpenVPNTunnel Post /v2.3/networks/standard/{networkId}/tunnels/openvpn Create a new OpenVPN tunnel
OpenVPNAPI StandardDeleteOpenVPNTunnel Delete /v2.3/networks/standard/{networkId}/tunnels/openvpn/{tunnelId} Delete OpenVPN tunnel
OpenVPNAPI StandardGetOpenVPNTunnel Get /v2.3/networks/standard/{networkId}/tunnels/openvpn/{tunnelId} Get one openVPN tunnel
OpenVPNAPI StandardUpdateOpenVPNTunnel Put /v2.3/networks/standard/{networkId}/tunnels/openvpn/{tunnelId} Update openVPN Tunnel
RegionsAPI StandardGetRegion Get /v2.3/networks/standard/{networkId}/regions/{regionId} Get region by ID
RegionsAPI StandardNetworksControllerV2AddNetworkRegion Put /v2.3/networks/standard/{networkId}/regions Add regions to a network
RegionsAPI StandardNetworksControllerV2DeleteNetworkRegion Delete /v2.3/networks/standard/{networkId}/regions Remove regions from network
RegionsAPI StandardNetworksControllerV2GetRegions Get /v2.3/networks/standard/harmony-sase-regions List of available Harmony SASE regions that supports standard networks
RouteTableAPI StandardGetRouteTable Get /v2.3/networks/standard/{networkId}/route-table Get route table
StandardNetworksAPI StandardGetNetworks Get /v2.3/networks/standard Get all Networks
StandardNetworksAPI StandardNetworksControllerV2GetNetworkHealth Get /v2.3/networks/standard/{networkId}/health Get network health status
StandardNetworksAPI StandardNetworksControllerV2NetworkCreate Post /v2.3/networks/standard Create network
StandardNetworksAPI StandardNetworksControllerV2NetworkDelete Delete /v2.3/networks/standard/{networkId} Delete network
StandardNetworksAPI StandardNetworksControllerV2NetworkFind Get /v2.3/networks/standard/{networkId} Get network by Id
StandardNetworksAPI StandardNetworksControllerV2NetworkUpdate Put /v2.3/networks/standard/{networkId} Update network
StandardNetworksAPI StandardNetworksControllerV2Status Get /v2.3/networks/standard/status/{statusId} Get status of asynchronous operations.
WireguardAPI StandardCreateWireguardTunnel Post /v2.3/networks/standard/{networkId}/tunnels/wireguard Create a new Wireguard tunnel
WireguardAPI StandardDeleteWireguardTunnel Delete /v2.3/networks/standard/{networkId}/tunnels/wireguard/{tunnelId} Delete Wireguard tunnel
WireguardAPI StandardGetWireguardTunnel Get /v2.3/networks/standard/{networkId}/tunnels/wireguard/{tunnelId} Get a Wireguard tunnel
WireguardAPI StandardUpdateWireguardTunnel Put /v2.3/networks/standard/{networkId}/tunnels/wireguard/{tunnelId} Update a Wireguard tunnel

Documentation For Models

Documentation For Authorization

Authentication schemes defined for the API:

bearer

  • Type: HTTP Bearer token authentication

Example

auth := context.WithValue(context.Background(), perimeter81sdk.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

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors