marketplaceentitlementservice

package
v1.8.29 Latest Latest
Warning

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

Go to latest
Published: May 24, 2017 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Overview

Package marketplaceentitlementservice provides the client and types for making API requests to AWS Marketplace Entitlement Service.

This reference provides descriptions of the AWS Marketplace Entitlement Service API.

AWS Marketplace Entitlement Service is used to determine the entitlement of a customer to a given product. An entitlement represents capacity in a product owned by the customer. For example, a customer might own some number of users or seats in an SaaS application or some amount of data capacity in a multi-tenant database.

Getting Entitlement Records

  • GetEntitlements- Gets the entitlements for a Marketplace product.

See https://docs.aws.amazon.com/goto/WebAPI/entitlement.marketplace-2017-01-11 for more information on this service.

See marketplaceentitlementservice package documentation for more information. https://docs.aws.amazon.com/sdk-for-go/api/service/marketplaceentitlementservice/

Using the Client

To use the client for AWS Marketplace Entitlement Service you will first need to create a new instance of it.

When creating a client for an AWS service you'll first need to have a Session already created. The Session provides configuration that can be shared between multiple service clients. Additional configuration can be applied to the Session and service's client when they are constructed. The aws package's Config type contains several fields such as Region for the AWS Region the client should make API requests too. The optional Config value can be provided as the variadic argument for Sessions and client creation.

Once the service's client is created you can use it to make API requests the AWS service. These clients are safe to use concurrently.

// Create a session to share configuration, and load external configuration.
sess := session.Must(session.NewSession())

// Create the service's client with the session.
svc := marketplaceentitlementservice.New(sess)

See the SDK's documentation for more information on how to use service clients. https://docs.aws.amazon.com/sdk-for-go/api/

See aws package's Config type for more information on configuration options. https://docs.aws.amazon.com/sdk-for-go/api/aws/#Config

See the AWS Marketplace Entitlement Service client MarketplaceEntitlementService for more information on creating the service's client. https://docs.aws.amazon.com/sdk-for-go/api/service/marketplaceentitlementservice/#New

Once the client is created you can make an API request to the service. Each API method takes a input parameter, and returns the service response and an error.

The API method will document which error codes the service can be returned by the operation if the service models the API operation's errors. These errors will also be available as const strings prefixed with "ErrCode".

result, err := svc.GetEntitlements(params)
if err != nil {
    // Cast err to awserr.Error to handle specific error codes.
    aerr, ok := err.(awserr.Error)
    if ok && aerr.Code() == <error code to check for> {
        // Specific error code handling
    }
    return err
}

fmt.Println("GetEntitlements result:")
fmt.Println(result)

Using the Client with Context

The service's client also provides methods to make API requests with a Context value. This allows you to control the timeout, and cancellation of pending requests. These methods also take request Option as variadic parameter to apply additional configuration to the API request.

ctx := context.Background()

result, err := svc.GetEntitlementsWithContext(ctx, params)

See the request package documentation for more information on using Context pattern with the SDK. https://docs.aws.amazon.com/sdk-for-go/api/aws/request/

Index

Examples

Constants

View Source
const (
	// GetEntitlementFilterNameCustomerIdentifier is a GetEntitlementFilterName enum value
	GetEntitlementFilterNameCustomerIdentifier = "CUSTOMER_IDENTIFIER"

	// GetEntitlementFilterNameDimension is a GetEntitlementFilterName enum value
	GetEntitlementFilterNameDimension = "DIMENSION"
)
View Source
const (

	// ErrCodeInternalServiceErrorException for service response error code
	// "InternalServiceErrorException".
	//
	// An internal error has occurred. Retry your request. If the problem persists,
	// post a message with details on the AWS forums.
	ErrCodeInternalServiceErrorException = "InternalServiceErrorException"

	// ErrCodeInvalidParameterException for service response error code
	// "InvalidParameterException".
	//
	// One or more parameters in your request was invalid.
	ErrCodeInvalidParameterException = "InvalidParameterException"

	// ErrCodeThrottlingException for service response error code
	// "ThrottlingException".
	//
	// The calls to the GetEntitlements API are throttled.
	ErrCodeThrottlingException = "ThrottlingException"
)
View Source
const (
	ServiceName = "entitlement.marketplace" // Service endpoint prefix API calls made to.
	EndpointsID = ServiceName               // Service ID for Regions and Endpoints metadata.
)

Service information constants

Variables

This section is empty.

Functions

This section is empty.

Types

type Entitlement

type Entitlement struct {

	// The customer identifier is a handle to each unique customer in an application.
	// Customer identifiers are obtained through the ResolveCustomer operation in
	// AWS Marketplace Metering Service.
	CustomerIdentifier *string `type:"string"`

	// The dimension for which the given entitlement applies. Dimensions represent
	// categories of capacity in a product and are specified when the product is
	// listed in AWS Marketplace.
	Dimension *string `type:"string"`

	// The expiration date represents the minimum date through which this entitlement
	// is expected to remain valid. For contractual products listed on AWS Marketplace,
	// the expiration date is the date at which the customer will renew or cancel
	// their contract. Customers who are opting to renew their contract will still
	// have entitlements with an expiration date.
	ExpirationDate *time.Time `type:"timestamp" timestampFormat:"unix"`

	// The product code for which the given entitlement applies. Product codes are
	// provided by AWS Marketplace when the product listing is created.
	ProductCode *string `min:"1" type:"string"`

	// The EntitlementValue represents the amount of capacity that the customer
	// is entitled to for the product.
	Value *EntitlementValue `type:"structure"`
	// contains filtered or unexported fields
}

An entitlement represents capacity in a product owned by the customer. For example, a customer might own some number of users or seats in an SaaS application or some amount of data capacity in a multi-tenant database. Please also see https://docs.aws.amazon.com/goto/WebAPI/entitlement.marketplace-2017-01-11/Entitlement

func (Entitlement) GoString

func (s Entitlement) GoString() string

GoString returns the string representation

func (*Entitlement) SetCustomerIdentifier

func (s *Entitlement) SetCustomerIdentifier(v string) *Entitlement

SetCustomerIdentifier sets the CustomerIdentifier field's value.

func (*Entitlement) SetDimension

func (s *Entitlement) SetDimension(v string) *Entitlement

SetDimension sets the Dimension field's value.

func (*Entitlement) SetExpirationDate

func (s *Entitlement) SetExpirationDate(v time.Time) *Entitlement

SetExpirationDate sets the ExpirationDate field's value.

func (*Entitlement) SetProductCode

func (s *Entitlement) SetProductCode(v string) *Entitlement

SetProductCode sets the ProductCode field's value.

func (*Entitlement) SetValue

func (s *Entitlement) SetValue(v *EntitlementValue) *Entitlement

SetValue sets the Value field's value.

func (Entitlement) String

func (s Entitlement) String() string

String returns the string representation

type EntitlementValue

type EntitlementValue struct {

	// The BooleanValue field will be populated with a boolean value when the entitlement
	// is a boolean type. Otherwise, the field will not be set.
	BooleanValue *bool `type:"boolean"`

	// The DoubleValue field will be populated with a double value when the entitlement
	// is a double type. Otherwise, the field will not be set.
	DoubleValue *float64 `type:"double"`

	// The IntegerValue field will be populated with an integer value when the entitlement
	// is an integer type. Otherwise, the field will not be set.
	IntegerValue *int64 `type:"integer"`

	// The StringValue field will be populated with a string value when the entitlement
	// is a string type. Otherwise, the field will not be set.
	StringValue *string `type:"string"`
	// contains filtered or unexported fields
}

The EntitlementValue represents the amount of capacity that the customer is entitled to for the product. Please also see https://docs.aws.amazon.com/goto/WebAPI/entitlement.marketplace-2017-01-11/EntitlementValue

func (EntitlementValue) GoString

func (s EntitlementValue) GoString() string

GoString returns the string representation

func (*EntitlementValue) SetBooleanValue

func (s *EntitlementValue) SetBooleanValue(v bool) *EntitlementValue

SetBooleanValue sets the BooleanValue field's value.

func (*EntitlementValue) SetDoubleValue

func (s *EntitlementValue) SetDoubleValue(v float64) *EntitlementValue

SetDoubleValue sets the DoubleValue field's value.

func (*EntitlementValue) SetIntegerValue

func (s *EntitlementValue) SetIntegerValue(v int64) *EntitlementValue

SetIntegerValue sets the IntegerValue field's value.

func (*EntitlementValue) SetStringValue

func (s *EntitlementValue) SetStringValue(v string) *EntitlementValue

SetStringValue sets the StringValue field's value.

func (EntitlementValue) String

func (s EntitlementValue) String() string

String returns the string representation

type GetEntitlementsInput

type GetEntitlementsInput struct {

	// Filter is used to return entitlements for a specific customer or for a specific
	// dimension. Filters are described as keys mapped to a lists of values. Filtered
	// requests are unioned for each value in the value list, and then intersected
	// for each filter key.
	Filter map[string][]*string `type:"map"`

	// The maximum number of items to retrieve from the GetEntitlements operation.
	// For pagination, use the NextToken field in subsequent calls to GetEntitlements.
	MaxResults *int64 `type:"integer"`

	// For paginated calls to GetEntitlements, pass the NextToken from the previous
	// GetEntitlementsResult.
	NextToken *string `type:"string"`

	// Product code is used to uniquely identify a product in AWS Marketplace. The
	// product code will be provided by AWS Marketplace when the product listing
	// is created.
	//
	// ProductCode is a required field
	ProductCode *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

The GetEntitlementsRequest contains parameters for the GetEntitlements operation. Please also see https://docs.aws.amazon.com/goto/WebAPI/entitlement.marketplace-2017-01-11/GetEntitlementsRequest

func (GetEntitlementsInput) GoString

func (s GetEntitlementsInput) GoString() string

GoString returns the string representation

func (*GetEntitlementsInput) SetFilter

func (s *GetEntitlementsInput) SetFilter(v map[string][]*string) *GetEntitlementsInput

SetFilter sets the Filter field's value.

func (*GetEntitlementsInput) SetMaxResults

func (s *GetEntitlementsInput) SetMaxResults(v int64) *GetEntitlementsInput

SetMaxResults sets the MaxResults field's value.

func (*GetEntitlementsInput) SetNextToken

func (s *GetEntitlementsInput) SetNextToken(v string) *GetEntitlementsInput

SetNextToken sets the NextToken field's value.

func (*GetEntitlementsInput) SetProductCode

func (s *GetEntitlementsInput) SetProductCode(v string) *GetEntitlementsInput

SetProductCode sets the ProductCode field's value.

func (GetEntitlementsInput) String

func (s GetEntitlementsInput) String() string

String returns the string representation

func (*GetEntitlementsInput) Validate

func (s *GetEntitlementsInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type GetEntitlementsOutput

type GetEntitlementsOutput struct {

	// The set of entitlements found through the GetEntitlements operation. If the
	// result contains an empty set of entitlements, NextToken might still be present
	// and should be used.
	Entitlements []*Entitlement `type:"list"`

	// For paginated results, use NextToken in subsequent calls to GetEntitlements.
	// If the result contains an empty set of entitlements, NextToken might still
	// be present and should be used.
	NextToken *string `type:"string"`
	// contains filtered or unexported fields
}

The GetEntitlementsRequest contains results from the GetEntitlements operation. Please also see https://docs.aws.amazon.com/goto/WebAPI/entitlement.marketplace-2017-01-11/GetEntitlementsResult

func (GetEntitlementsOutput) GoString

func (s GetEntitlementsOutput) GoString() string

GoString returns the string representation

func (*GetEntitlementsOutput) SetEntitlements

func (s *GetEntitlementsOutput) SetEntitlements(v []*Entitlement) *GetEntitlementsOutput

SetEntitlements sets the Entitlements field's value.

func (*GetEntitlementsOutput) SetNextToken

SetNextToken sets the NextToken field's value.

func (GetEntitlementsOutput) String

func (s GetEntitlementsOutput) String() string

String returns the string representation

type MarketplaceEntitlementService

type MarketplaceEntitlementService struct {
	*client.Client
}

MarketplaceEntitlementService provides the API operation methods for making requests to AWS Marketplace Entitlement Service. See this package's package overview docs for details on the service.

MarketplaceEntitlementService methods are safe to use concurrently. It is not safe to modify mutate any of the struct's properties though.

func New

New creates a new instance of the MarketplaceEntitlementService client with a session. If additional configuration is needed for the client instance use the optional aws.Config parameter to add your extra config.

Example:

// Create a MarketplaceEntitlementService client from just a session.
svc := marketplaceentitlementservice.New(mySession)

// Create a MarketplaceEntitlementService client with additional configuration
svc := marketplaceentitlementservice.New(mySession, aws.NewConfig().WithRegion("us-west-2"))

func (*MarketplaceEntitlementService) GetEntitlements

GetEntitlements API operation for AWS Marketplace Entitlement Service.

GetEntitlements retrieves entitlement values for a given product. The results can be filtered based on customer identifier or product dimensions.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for AWS Marketplace Entitlement Service's API operation GetEntitlements for usage and error information.

Returned Error Codes:

  • ErrCodeInvalidParameterException "InvalidParameterException" One or more parameters in your request was invalid.

  • ErrCodeThrottlingException "ThrottlingException" The calls to the GetEntitlements API are throttled.

  • ErrCodeInternalServiceErrorException "InternalServiceErrorException" An internal error has occurred. Retry your request. If the problem persists, post a message with details on the AWS forums.

Please also see https://docs.aws.amazon.com/goto/WebAPI/entitlement.marketplace-2017-01-11/GetEntitlements

Example
// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.

package main

import (
	"bytes"
	"fmt"
	"time"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/marketplaceentitlementservice"
)

var _ time.Duration
var _ bytes.Buffer

func main() {
	sess := session.Must(session.NewSession())

	svc := marketplaceentitlementservice.New(sess)

	params := &marketplaceentitlementservice.GetEntitlementsInput{
		ProductCode: aws.String("ProductCode"), // Required
		Filter: map[string][]*string{
			"Key": { // Required
				aws.String("FilterValue"), // Required
				// More values...
			},
			// More values...
		},
		MaxResults: aws.Int64(1),
		NextToken:  aws.String("NonEmptyString"),
	}
	resp, err := svc.GetEntitlements(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*MarketplaceEntitlementService) GetEntitlementsRequest

func (c *MarketplaceEntitlementService) GetEntitlementsRequest(input *GetEntitlementsInput) (req *request.Request, output *GetEntitlementsOutput)

GetEntitlementsRequest generates a "aws/request.Request" representing the client's request for the GetEntitlements operation. The "output" return value can be used to capture response data after the request's "Send" method is called.

See GetEntitlements for usage and error information.

Creating a request object using this method should be used when you want to inject custom logic into the request's lifecycle using a custom handler, or if you want to access properties on the request object before or after sending the request. If you just want the service response, call the GetEntitlements method directly instead.

Note: You must call the "Send" method on the returned request object in order to execute the request.

// Example sending a request using the GetEntitlementsRequest method.
req, resp := client.GetEntitlementsRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

Please also see https://docs.aws.amazon.com/goto/WebAPI/entitlement.marketplace-2017-01-11/GetEntitlements

func (*MarketplaceEntitlementService) GetEntitlementsWithContext

func (c *MarketplaceEntitlementService) GetEntitlementsWithContext(ctx aws.Context, input *GetEntitlementsInput, opts ...request.Option) (*GetEntitlementsOutput, error)

GetEntitlementsWithContext is the same as GetEntitlements with the addition of the ability to pass a context and additional request options.

See GetEntitlements for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

Directories

Path Synopsis
Package marketplaceentitlementserviceiface provides an interface to enable mocking the AWS Marketplace Entitlement Service service client for testing your code.
Package marketplaceentitlementserviceiface provides an interface to enable mocking the AWS Marketplace Entitlement Service service client for testing your code.

Jump to

Keyboard shortcuts

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