stigg_sidecar

package module
v7.171.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 12, 2026 License: MIT Imports: 12 Imported by: 0

README

stigg-sidecar-sdk

Stigg Go SDK makes it easier to interact with Stigg Sidecar

Documentation

See https://docs.stigg.io/docs/sidecar-sdk

Installation

    go get github.com/stiggio/sidecar-sdk-go/v7

Usage

Initialize the client:


package xyz

import (
  "github.com/stiggio/sidecar-sdk-go/v7"
)

host := "localhost"
port := 80
client, err := NewSidecarClient(ApiClientConfig{ApiKey: "<SERVER-API-KEY>"}, &host, &port, RemoteSidecarConfig{})

// With legacy TLS enabled
// client, err := NewSidecarClient(ApiClientConfig{ApiKey: "<SERVER-API-KEY>"}, &host, &port, RemoteSidecarConfig{UseLegacyTls: true})

Get single entitlement of a customer


package xyz

import (
  "context"
  "fmt"
  "github.com/stiggio/sidecar-sdk-go/v7"
  sidecarv1 "github.com/stiggio/sidecar-sdk-go/v7/generated/stigg/sidecar/v1"
)

func main() {
  host := "localhost"
  port := 80
  client, err := NewSidecarClient(ApiClientConfig{apiKey: "<SERVER-API-KEY>"}, &host, &port)

  req := sidecarv1.GetBooleanEntitlementRequest{
    CustomerId: "customer-demo-01",
    ResourceId: nil,
  }
  
  resp, err := client.GetBooleanEntitlement(context.Background(), &req)
  if err != nil {
    fmt.Printf("Failed to get boolean entitlement: %v", err)
    return
  }

  fmt.Printf("Has access: %v", resp.HasAccess)
}

Accessing the api client:


package xyz

import (
  "context"
  "fmt"
  "github.com/stiggio/sidecar-sdk-go/v7"
  sidecarv1 "github.com/stiggio/sidecar-sdk-go/v7/generated/stigg/sidecar/v1"
)

func main() {
  host := "localhost"
  port := 80
  client, err := NewSidecarClient(ApiClientConfig{apiKey: "<SERVER-API-KEY>"}, &host, &port)
  
  customerId := "test-customer-6923842"

  result, err := client.Api().ProvisionCustomer(context.Background(), stigg.ProvisionCustomerInput{
    AdditionalMetaData:       nil,
    AwsMarketplaceCustomerID: nil,
    BillingID:                nil,
    BillingInformation:       nil,
    CouponRefID:              nil,
    CreatedAt:                nil,
    CrmID:                    nil,
    CustomerID:               nil,
    Email:                    nil,
    EnvironmentID:            nil,
    ExcludeFromExperiment:    nil,
    Name:                     nil,
    RefID:                    &customerId,
    SalesforceID:             nil,
    ShouldSyncFree:           nil,
    SubscriptionParams:       nil,
  })

  if err != nil {
    fmt.Printf("Provision failed: %v", err)
    panic(err)
  }

  fmt.Printf("Customer provisioned: %v", result)
}

License

See the LICENSE file for details

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ApiClientConfig

type ApiClientConfig struct {
	ApiKey     string
	HttpClient *http.Client
	BaseUrl    *string
}

type RemoteSidecarConfig

type RemoteSidecarConfig struct {
	UseLegacyTls bool
}

type SidecarClient

type SidecarClient struct {
	sidecarv1.SidecarServiceClient

	Api stigg.StiggClient
	// contains filtered or unexported fields
}

func NewSidecarClient

func NewSidecarClient(apiConfig ApiClientConfig, remoteSidecarHost *string, remoteSidecarPort *int, remoteSidecarOptions RemoteSidecarConfig) (*SidecarClient, error)

func (*SidecarClient) Close

func (c *SidecarClient) Close() error

Directories

Path Synopsis
generated

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL