merchantapi

package
v0.236.0 Latest Latest
Warning

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

Go to latest
Published: Jun 3, 2025 License: BSD-3-Clause Imports: 18 Imported by: 0

Documentation

Overview

Package merchantapi provides access to the Merchant API.

For product documentation, see: https://developers.devsite.corp.google.com/merchant/api

Library status

These client libraries are officially supported by Google. However, this library is considered complete and is in maintenance mode. This means that we will address critical bugs and security issues but will not add any new features.

When possible, we recommend using our newer [Cloud Client Libraries for Go](https://pkg.go.dev/cloud.google.com/go) that are still actively being worked and iterated on.

Creating a client

Usage example:

import "google.golang.org/api/merchantapi/issueresolution_v1beta"
...
ctx := context.Background()
merchantapiService, err := merchantapi.NewService(ctx)

In this example, Google Application Default Credentials are used for authentication. For information on how to create and obtain Application Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials.

Other authentication options

To use an API key for authentication (note: some APIs do not support API keys), use google.golang.org/api/option.WithAPIKey:

merchantapiService, err := merchantapi.NewService(ctx, option.WithAPIKey("AIza..."))

To use an OAuth token (e.g., a user token obtained via a three-legged OAuth flow, use google.golang.org/api/option.WithTokenSource:

config := &oauth2.Config{...}
// ...
token, err := config.Exchange(ctx, ...)
merchantapiService, err := merchantapi.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token)))

See google.golang.org/api/option.ClientOption for details on options.

Index

Constants

View Source
const (
	// Manage your product listings and accounts for Google Shopping
	ContentScope = "https://www.googleapis.com/auth/content"
)

OAuth2 scopes used by this API.

Variables

This section is empty.

Functions

This section is empty.

Types

type Action

type Action struct {
	// BuiltinSimpleAction: Action implemented and performed in (your) third-party
	// application. The application should point the business to the place, where
	// they can access the corresponding functionality or provide instructions, if
	// the specific functionality is not available.
	BuiltinSimpleAction *BuiltInSimpleAction `json:"builtinSimpleAction,omitempty"`
	// BuiltinUserInputAction: Action implemented and performed in (your)
	// third-party application. The application needs to show an additional content
	// and input form to the business as specified for given action. They can
	// trigger the action only when they provided all required inputs.
	BuiltinUserInputAction *BuiltInUserInputAction `json:"builtinUserInputAction,omitempty"`
	// ButtonLabel: Label of the action button.
	ButtonLabel string `json:"buttonLabel,omitempty"`
	// ExternalAction: Action that is implemented and performed outside of (your)
	// third-party application. The application needs to redirect the business to
	// the external location where they can perform the action.
	ExternalAction *ExternalAction `json:"externalAction,omitempty"`
	// IsAvailable: Controlling whether the button is active or disabled. The value
	// is 'false' when the action was already requested or is not available. If the
	// action is not available then a reason will be present. If (your) third-party
	// application shows a disabled button for action that is not available, then
	// it should also show reasons.
	IsAvailable bool `json:"isAvailable,omitempty"`
	// Reasons: List of reasons why the action is not available. The list of
	// reasons is empty if the action is available. If there is only one reason, it
	// can be displayed next to the disabled button. If there are more reasons, all
	// of them should be displayed, for example in a pop-up dialog.
	Reasons []*Reason `json:"reasons,omitempty"`
	// ForceSendFields is a list of field names (e.g. "BuiltinSimpleAction") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "BuiltinSimpleAction") to include
	// in API requests with the JSON null value. By default, fields with empty
	// values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

Action: An actionable step that can be executed to solve the issue.

func (Action) MarshalJSON

func (s Action) MarshalJSON() ([]byte, error)

type ActionFlow

type ActionFlow struct {
	// DialogButtonLabel: Label for the button to trigger the action from the
	// action dialog. For example: "Request review"
	DialogButtonLabel string `json:"dialogButtonLabel,omitempty"`
	// DialogCallout: Important message to be highlighted in the request dialog.
	// For example: "You can only request a review for disagreeing with this issue
	// once. If it's not approved, you'll need to fix the issue and wait a few days
	// before you can request another review."
	DialogCallout *Callout `json:"dialogCallout,omitempty"`
	// DialogMessage: Message displayed in the request dialog. For example: "Make
	// sure you've fixed all your country-specific issues. If not, you may have to
	// wait 7 days to request another review". There may be an more information to
	// be shown in a tooltip.
	DialogMessage *TextWithTooltip `json:"dialogMessage,omitempty"`
	// DialogTitle: Title of the request dialog. For example: "Before you request a
	// review"
	DialogTitle string `json:"dialogTitle,omitempty"`
	// Id: Not for display but need to be sent back for the selected action flow.
	Id string `json:"id,omitempty"`
	// Inputs: A list of input fields.
	Inputs []*InputField `json:"inputs,omitempty"`
	// Label: Text value describing the intent for the action flow. It can be used
	// as an input label if business needs to pick one of multiple flows. For
	// example: "I disagree with the issue"
	Label string `json:"label,omitempty"`
	// ForceSendFields is a list of field names (e.g. "DialogButtonLabel") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "DialogButtonLabel") to include in
	// API requests with the JSON null value. By default, fields with empty values
	// are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

ActionFlow: Flow that can be selected for an action. When a business selects a flow, application should open a dialog with more information and input form.

func (ActionFlow) MarshalJSON

func (s ActionFlow) MarshalJSON() ([]byte, error)

type ActionInput

type ActionInput struct {
	// ActionFlowId: Required. Id of the selected action flow.
	ActionFlowId string `json:"actionFlowId,omitempty"`
	// InputValues: Required. Values for input fields.
	InputValues []*InputValue `json:"inputValues,omitempty"`
	// ForceSendFields is a list of field names (e.g. "ActionFlowId") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "ActionFlowId") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

ActionInput: Input provided by the business.

func (ActionInput) MarshalJSON

func (s ActionInput) MarshalJSON() ([]byte, error)

type AdditionalContent

type AdditionalContent struct {
	// Paragraphs: Long text organized into paragraphs.
	Paragraphs []string `json:"paragraphs,omitempty"`
	// Title: Title of the additional content;
	Title string `json:"title,omitempty"`
	// ForceSendFields is a list of field names (e.g. "Paragraphs") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Paragraphs") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

AdditionalContent: Long text from external source.

func (AdditionalContent) MarshalJSON

func (s AdditionalContent) MarshalJSON() ([]byte, error)

type Breakdown

type Breakdown struct {
	// Details: Human readable, localized description of issue's effect on
	// different targets. Should be rendered as a list. For example: * "Products
	// not showing in ads" * "Products not showing organically"
	Details []string `json:"details,omitempty"`
	// Regions: Lists of regions. Should be rendered as a title for this group of
	// details. The full list should be shown to the business. If the list is too
	// long, it is recommended to make it expandable.
	Regions []*Region `json:"regions,omitempty"`
	// ForceSendFields is a list of field names (e.g. "Details") to unconditionally
	// include in API requests. By default, fields with empty or default values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Details") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

Breakdown: A detailed impact breakdown for a group of regions where the impact of the issue on different shopping destinations is the same.

func (Breakdown) MarshalJSON

func (s Breakdown) MarshalJSON() ([]byte, error)

type BuiltInSimpleAction

type BuiltInSimpleAction struct {
	// AdditionalContent: Long text from an external source that should be
	// available to the business. Present when the type is
	// `SHOW_ADDITIONAL_CONTENT`.
	AdditionalContent *AdditionalContent `json:"additionalContent,omitempty"`
	// AttributeCode: The attribute that needs to be updated. Present when the type
	// is `EDIT_ITEM_ATTRIBUTE`. This field contains a code for attribute,
	// represented in snake_case. You can find a list of product's attributes, with
	// their codes here (https://support.google.com/merchants/answer/7052112).
	AttributeCode string `json:"attributeCode,omitempty"`
	// Type: The type of action that represents a functionality that is expected to
	// be available in third-party application.
	//
	// Possible values:
	//   "BUILT_IN_SIMPLE_ACTION_TYPE_UNSPECIFIED" - Default value. Will never be
	// provided by the API.
	//   "VERIFY_PHONE" - Redirect the business to the part of your application
	// where they can verify their phone.
	//   "CLAIM_WEBSITE" - Redirect the business to the part of your application
	// where they can claim their website.
	//   "ADD_PRODUCTS" - Redirect the business to the part of your application
	// where they can add products.
	//   "ADD_CONTACT_INFO" - Open a form where the business can edit their contact
	// information.
	//   "LINK_ADS_ACCOUNT" - Redirect the business to the part of your application
	// where they can link ads account.
	//   "ADD_BUSINESS_REGISTRATION_NUMBER" - Open a form where the business can
	// add their business registration number.
	//   "EDIT_ITEM_ATTRIBUTE" - Open a form where the business can edit an
	// attribute. The attribute that needs to be updated is specified in
	// attribute_code field of the action.
	//   "FIX_ACCOUNT_ISSUE" - Redirect the business from the product issues to the
	// diagnostic page with their account issues in your application. This action
	// will be returned only for product issues that are caused by an account issue
	// and thus the business should resolve the problem on the account level.
	//   "SHOW_ADDITIONAL_CONTENT" - Show additional content to the business. This
	// action will be used for example to deliver a justification from national
	// authority.
	Type string `json:"type,omitempty"`
	// ForceSendFields is a list of field names (e.g. "AdditionalContent") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "AdditionalContent") to include in
	// API requests with the JSON null value. By default, fields with empty values
	// are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

BuiltInSimpleAction: Action that is implemented and performed in (your) third-party application. Represents various functionality that is expected to be available to business and will help them with resolving the issue. The application should point the business to the place, where they can access the corresponding functionality. If the functionality is not supported, it is recommended to explain the situation to the business and provide them with instructions how to solve the issue.

func (BuiltInSimpleAction) MarshalJSON

func (s BuiltInSimpleAction) MarshalJSON() ([]byte, error)

type BuiltInUserInputAction

type BuiltInUserInputAction struct {
	// ActionContext: Contains the action's context that must be included as part
	// of the TriggerActionPayload.action_context in TriggerActionRequest.payload
	// to call the `triggeraction` method. The content should be treated as opaque
	// and must not be modified.
	ActionContext string `json:"actionContext,omitempty"`
	// Flows: Actions may provide multiple different flows. Business selects one
	// that fits best to their intent. Selecting the flow is the first step in
	// user's interaction with the action. It affects what input fields will be
	// available and required and also how the request will be processed.
	Flows []*ActionFlow `json:"flows,omitempty"`
	// ForceSendFields is a list of field names (e.g. "ActionContext") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "ActionContext") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

BuiltInUserInputAction: Action that is implemented and performed in (your) third-party application. The application needs to show an additional content and input form to the business. They can start the action only when they provided all required inputs. The application will request processing of the action by calling the triggeraction method (https://developers.google.com/merchant/api/reference/rest/issueresolution_v1beta/issueresolution/triggeraction).

func (BuiltInUserInputAction) MarshalJSON

func (s BuiltInUserInputAction) MarshalJSON() ([]byte, error)

type Callout

type Callout struct {
	// FullMessage: A full message that needs to be shown to the business.
	FullMessage *TextWithTooltip `json:"fullMessage,omitempty"`
	// StyleHint: Can be used to render messages with different severity in
	// different styles. Snippets off all types contain important information that
	// should be displayed to the business.
	//
	// Possible values:
	//   "CALLOUT_STYLE_HINT_UNSPECIFIED" - Default value. Will never be provided
	// by the API.
	//   "ERROR" - The most important type of information highlighting problems,
	// like an unsuccessful outcome of previously requested actions.
	//   "WARNING" - Information warning about pending problems, risks or
	// deadlines.
	//   "INFO" - Default severity for important information like pending status of
	// previously requested action or cooldown for re-review.
	StyleHint string `json:"styleHint,omitempty"`
	// ForceSendFields is a list of field names (e.g. "FullMessage") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "FullMessage") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

Callout: An important message that should be highlighted. Usually displayed as a banner.

func (Callout) MarshalJSON

func (s Callout) MarshalJSON() ([]byte, error)

type CheckboxInput

type CheckboxInput struct {
}

CheckboxInput: Checkbox input allows the business to provide a boolean value. Corresponds to the html input type=checkbox (https://www.w3.org/TR/2012/WD-html-markup-20121025/input.checkbox.html#input.checkbox). If the business checks the box, the input value for the field is `true`, otherwise it is `false`. This type of input is often used as a confirmation that the business completed required steps before they are allowed to start the action. In such a case, the input field is marked as required and the button to trigger the action should stay disabled until the business checks the box.

type CheckboxInputValue

type CheckboxInputValue struct {
	// Value: Required. True if the business checked the box field. False
	// otherwise.
	Value bool `json:"value,omitempty"`
	// ForceSendFields is a list of field names (e.g. "Value") to unconditionally
	// include in API requests. By default, fields with empty or default values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Value") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

CheckboxInputValue: Value for checkbox input field.

func (CheckboxInputValue) MarshalJSON

func (s CheckboxInputValue) MarshalJSON() ([]byte, error)

type ChoiceInput

type ChoiceInput struct {
	// Options: A list of choices. Only one option can be selected.
	Options []*ChoiceInputOption `json:"options,omitempty"`
	// ForceSendFields is a list of field names (e.g. "Options") to unconditionally
	// include in API requests. By default, fields with empty or default values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Options") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

ChoiceInput: Choice input allows the business to select one of the offered choices. Some choices may be linked to additional input fields that should be displayed under or next to the choice option. The value for the additional input field needs to be provided only when the specific choice is selected by the the business. For example, additional input field can be hidden or disabled until the business selects the specific choice.

func (ChoiceInput) MarshalJSON

func (s ChoiceInput) MarshalJSON() ([]byte, error)

type ChoiceInputOption

type ChoiceInputOption struct {
	// AdditionalInput: Input that should be displayed when this option is
	// selected. The additional input will not contain a `ChoiceInput`.
	AdditionalInput *InputField `json:"additionalInput,omitempty"`
	// Id: Not for display but need to be sent back for the selected choice option.
	Id string `json:"id,omitempty"`
	// Label: Short description of the choice option. There may be more information
	// to be shown as a tooltip.
	Label *TextWithTooltip `json:"label,omitempty"`
	// ForceSendFields is a list of field names (e.g. "AdditionalInput") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "AdditionalInput") to include in
	// API requests with the JSON null value. By default, fields with empty values
	// are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

ChoiceInputOption: A choice that the business can select.

func (ChoiceInputOption) MarshalJSON

func (s ChoiceInputOption) MarshalJSON() ([]byte, error)

type ChoiceInputValue

type ChoiceInputValue struct {
	// ChoiceInputOptionId: Required. Id of the option that was selected by the
	// business.
	ChoiceInputOptionId string `json:"choiceInputOptionId,omitempty"`
	// ForceSendFields is a list of field names (e.g. "ChoiceInputOptionId") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "ChoiceInputOptionId") to include
	// in API requests with the JSON null value. By default, fields with empty
	// values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

ChoiceInputValue: Value for choice input field.

func (ChoiceInputValue) MarshalJSON

func (s ChoiceInputValue) MarshalJSON() ([]byte, error)

type ExternalAction

type ExternalAction struct {
	// Type: The type of external action.
	//
	// Possible values:
	//   "EXTERNAL_ACTION_TYPE_UNSPECIFIED" - Default value. Will never be provided
	// by the API.
	//   "REVIEW_PRODUCT_ISSUE_IN_MERCHANT_CENTER" - Redirect to Merchant Center
	// where the business can request a review for issue related to their product.
	//   "REVIEW_ACCOUNT_ISSUE_IN_MERCHANT_CENTER" - Redirect to Merchant Center
	// where the business can request a review for issue related to their account.
	//   "LEGAL_APPEAL_IN_HELP_CENTER" - Redirect to the form in Help Center where
	// the business can request a legal appeal for the issue.
	//   "VERIFY_IDENTITY_IN_MERCHANT_CENTER" - Redirect to Merchant Center where
	// the business can perform identity verification.
	Type string `json:"type,omitempty"`
	// Uri: URL to external system, for example Merchant Center, where the business
	// can perform the action.
	Uri string `json:"uri,omitempty"`
	// ForceSendFields is a list of field names (e.g. "Type") to unconditionally
	// include in API requests. By default, fields with empty or default values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Type") to include in API requests
	// with the JSON null value. By default, fields with empty values are omitted
	// from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

ExternalAction: Action that is implemented and performed outside of the third-party application. It should redirect the business to the provided URL of an external system where they can perform the action. For example to request a review in the Merchant Center.

func (ExternalAction) MarshalJSON

func (s ExternalAction) MarshalJSON() ([]byte, error)

type Impact

type Impact struct {
	// Breakdowns: Detailed impact breakdown. Explains the types of restriction the
	// issue has in different shopping destinations and territory. If present, it
	// should be rendered to the business. Can be shown as a mouse over dropdown or
	// a dialog. Each breakdown item represents a group of regions with the same
	// impact details.
	Breakdowns []*Breakdown `json:"breakdowns,omitempty"`
	// Message: Optional. Message summarizing the overall impact of the issue. If
	// present, it should be rendered to the business. For example: "Disapproves
	// 90k offers in 25 countries"
	Message string `json:"message,omitempty"`
	// Severity: The severity of the issue.
	//
	// Possible values:
	//   "SEVERITY_UNSPECIFIED" - Default value. Will never be provided by the API.
	//   "ERROR" - Causes either an account suspension or an item disapproval.
	// Errors should be resolved as soon as possible to ensure items are eligible
	// to appear in results again.
	//   "WARNING" - Warnings can negatively impact the performance of ads and can
	// lead to item or account suspensions in the future unless the issue is
	// resolved.
	//   "INFO" - Infos are suggested optimizations to increase data quality.
	// Resolving these issues is recommended, but not required.
	Severity string `json:"severity,omitempty"`
	// ForceSendFields is a list of field names (e.g. "Breakdowns") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Breakdowns") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

Impact: Overall impact of the issue.

func (Impact) MarshalJSON

func (s Impact) MarshalJSON() ([]byte, error)

type InputField

type InputField struct {
	// CheckboxInput: Input field to provide a boolean value. Corresponds to the
	// html input type=checkbox
	// (https://www.w3.org/TR/2012/WD-html-markup-20121025/input.checkbox.html#input.checkbox).
	CheckboxInput *CheckboxInput `json:"checkboxInput,omitempty"`
	// ChoiceInput: Input field to select one of the offered choices. Corresponds
	// to the html input type=radio
	// (https://www.w3.org/TR/2012/WD-html-markup-20121025/input.radio.html#input.radio).
	ChoiceInput *ChoiceInput `json:"choiceInput,omitempty"`
	// Id: Not for display but need to be sent back for the given input field.
	Id string `json:"id,omitempty"`
	// Label: Input field label. There may be more information to be shown in a
	// tooltip.
	Label *TextWithTooltip `json:"label,omitempty"`
	// Required: Whether the field is required. The action button needs to stay
	// disabled till values for all required fields are provided.
	Required bool `json:"required,omitempty"`
	// TextInput: Input field to provide text information. Corresponds to the html
	// input type=text
	// (https://www.w3.org/TR/2012/WD-html-markup-20121025/input.text.html#input.text)
	// or html textarea
	// (https://www.w3.org/TR/2012/WD-html-markup-20121025/textarea.html#textarea).
	TextInput *TextInput `json:"textInput,omitempty"`
	// ForceSendFields is a list of field names (e.g. "CheckboxInput") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "CheckboxInput") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

InputField: Input field that needs to be available to the business. If the field is marked as required, then a value needs to be provided for a successful processing of the request.

func (InputField) MarshalJSON

func (s InputField) MarshalJSON() ([]byte, error)

type InputValue

type InputValue struct {
	// CheckboxInputValue: Value for checkbox input field.
	CheckboxInputValue *CheckboxInputValue `json:"checkboxInputValue,omitempty"`
	// ChoiceInputValue: Value for choice input field.
	ChoiceInputValue *ChoiceInputValue `json:"choiceInputValue,omitempty"`
	// InputFieldId: Required. Id of the corresponding input field.
	InputFieldId string `json:"inputFieldId,omitempty"`
	// TextInputValue: Value for text input field.
	TextInputValue *TextInputValue `json:"textInputValue,omitempty"`
	// ForceSendFields is a list of field names (e.g. "CheckboxInputValue") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "CheckboxInputValue") to include
	// in API requests with the JSON null value. By default, fields with empty
	// values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

InputValue: Input provided by the business for input field.

func (InputValue) MarshalJSON

func (s InputValue) MarshalJSON() ([]byte, error)

type IssueresolutionRenderaccountissuesCall

type IssueresolutionRenderaccountissuesCall struct {
	// contains filtered or unexported fields
}

func (*IssueresolutionRenderaccountissuesCall) Context

Context sets the context to be used in this call's Do method.

func (*IssueresolutionRenderaccountissuesCall) Do

Do executes the "merchantapi.issueresolution.renderaccountissues" call. Any non-2xx status code is an error. Response headers are in either *RenderAccountIssuesResponse.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*IssueresolutionRenderaccountissuesCall) Fields

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*IssueresolutionRenderaccountissuesCall) Header

Header returns a http.Header that can be modified by the caller to add headers to the request.

func (*IssueresolutionRenderaccountissuesCall) LanguageCode

LanguageCode sets the optional parameter "languageCode": The IETF BCP-47 (https://tools.ietf.org/html/bcp47) language code used to localize issue resolution content. If not set, the result will be in default language `en-US`.

func (*IssueresolutionRenderaccountissuesCall) TimeZone

TimeZone sets the optional parameter "timeZone": The IANA (https://www.iana.org/time-zones) timezone used to localize times in an issue resolution content. For example 'America/Los_Angeles'. If not set, results will use as a default UTC.

type IssueresolutionRenderproductissuesCall

type IssueresolutionRenderproductissuesCall struct {
	// contains filtered or unexported fields
}

func (*IssueresolutionRenderproductissuesCall) Context

Context sets the context to be used in this call's Do method.

func (*IssueresolutionRenderproductissuesCall) Do

Do executes the "merchantapi.issueresolution.renderproductissues" call. Any non-2xx status code is an error. Response headers are in either *RenderProductIssuesResponse.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*IssueresolutionRenderproductissuesCall) Fields

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*IssueresolutionRenderproductissuesCall) Header

Header returns a http.Header that can be modified by the caller to add headers to the request.

func (*IssueresolutionRenderproductissuesCall) LanguageCode

LanguageCode sets the optional parameter "languageCode": The IETF BCP-47 (https://tools.ietf.org/html/bcp47) language code used to localize an issue resolution content. If not set, the result will be in default language `en-US`.

func (*IssueresolutionRenderproductissuesCall) TimeZone

TimeZone sets the optional parameter "timeZone": The IANA (https://www.iana.org/time-zones) timezone used to localize times in an issue resolution content. For example 'America/Los_Angeles'. If not set, results will use as a default UTC.

type IssueresolutionService

type IssueresolutionService struct {
	// contains filtered or unexported fields
}

func NewIssueresolutionService

func NewIssueresolutionService(s *Service) *IssueresolutionService

func (*IssueresolutionService) Renderaccountissues

func (r *IssueresolutionService) Renderaccountissues(name string, renderissuesrequestpayload *RenderIssuesRequestPayload) *IssueresolutionRenderaccountissuesCall

Renderaccountissues: Provide a list of business's account issues with an issue resolution content and available actions. This content and actions are meant to be rendered and shown in third-party applications.

- name: The account to fetch issues for. Format: `accounts/{account}`.

func (*IssueresolutionService) Renderproductissues

func (r *IssueresolutionService) Renderproductissues(name string, renderissuesrequestpayload *RenderIssuesRequestPayload) *IssueresolutionRenderproductissuesCall

Renderproductissues: Provide a list of issues for business's product with an issue resolution content and available actions. This content and actions are meant to be rendered and shown in third-party applications.

  • name: The name of the product to fetch issues for. Format: `accounts/{account}/products/{product}`.

func (*IssueresolutionService) Triggeraction

func (r *IssueresolutionService) Triggeraction(name string, triggeractionpayload *TriggerActionPayload) *IssueresolutionTriggeractionCall

Triggeraction: Start an action. The action can be requested by a business in third-party application. Before the business can request the action, the third-party application needs to show them action specific content and display a user input form. The action can be successfully started only once all `required` inputs are provided. If any `required` input is missing, or invalid value was provided, the service will return 400 error. Validation errors will contain Ids for all problematic field together with translated, human readable error messages that can be shown to the user.

  • name: The business's account that is triggering the action. Format: `accounts/{account}`.

type IssueresolutionTriggeractionCall

type IssueresolutionTriggeractionCall struct {
	// contains filtered or unexported fields
}

func (*IssueresolutionTriggeractionCall) Context

Context sets the context to be used in this call's Do method.

func (*IssueresolutionTriggeractionCall) Do

Do executes the "merchantapi.issueresolution.triggeraction" call. Any non-2xx status code is an error. Response headers are in either *TriggerActionResponse.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*IssueresolutionTriggeractionCall) Fields

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*IssueresolutionTriggeractionCall) Header

Header returns a http.Header that can be modified by the caller to add headers to the request.

func (*IssueresolutionTriggeractionCall) LanguageCode

LanguageCode sets the optional parameter "languageCode": Language code IETF BCP 47 syntax (https://tools.ietf.org/html/bcp47) used to localize the response. If not set, the result will be in default language `en-US`.

type ProductChange

type ProductChange struct {
	// NewValue: The new value of the changed resource or attribute. If empty, it
	// means that the product was deleted. Will have one of these values :
	// (`approved`, `pending`, `disapproved`, “)
	NewValue string `json:"newValue,omitempty"`
	// OldValue: The old value of the changed resource or attribute. If empty, it
	// means that the product was created. Will have one of these values :
	// (`approved`, `pending`, `disapproved`, “)
	OldValue string `json:"oldValue,omitempty"`
	// RegionCode: Countries that have the change (if applicable). Represented in
	// the ISO 3166 format.
	RegionCode string `json:"regionCode,omitempty"`
	// ReportingContext: Reporting contexts that have the change (if applicable).
	// Currently this field supports only (`SHOPPING_ADS`, `LOCAL_INVENTORY_ADS`,
	// `YOUTUBE_SHOPPING`, `YOUTUBE_CHECKOUT`, `YOUTUBE_AFFILIATE`) from the enum
	// value ReportingContextEnum
	// (/merchant/api/reference/rest/Shared.Types/ReportingContextEnum)
	//
	// Possible values:
	//   "REPORTING_CONTEXT_ENUM_UNSPECIFIED" - Not specified.
	//   "SHOPPING_ADS" - [Shopping
	// ads](https://support.google.com/merchants/answer/6149970).
	//   "DISCOVERY_ADS" - Deprecated: Use `DEMAND_GEN_ADS` instead. [Discovery and
	// Demand Gen ads](https://support.google.com/merchants/answer/13389785).
	//   "DEMAND_GEN_ADS" - [Demand Gen
	// ads](https://support.google.com/merchants/answer/13389785).
	//   "DEMAND_GEN_ADS_DISCOVER_SURFACE" - [Demand Gen ads on Discover
	// surface](https://support.google.com/merchants/answer/13389785).
	//   "VIDEO_ADS" - [Video
	// ads](https://support.google.com/google-ads/answer/6340491).
	//   "DISPLAY_ADS" - [Display
	// ads](https://support.google.com/merchants/answer/6069387).
	//   "LOCAL_INVENTORY_ADS" - [Local inventory
	// ads](https://support.google.com/merchants/answer/3271956).
	//   "VEHICLE_INVENTORY_ADS" - [Vehicle inventory
	// ads](https://support.google.com/merchants/answer/11544533).
	//   "FREE_LISTINGS" - [Free product
	// listings](https://support.google.com/merchants/answer/9199328).
	//   "FREE_LOCAL_LISTINGS" - [Free local product
	// listings](https://support.google.com/merchants/answer/9825611).
	//   "FREE_LOCAL_VEHICLE_LISTINGS" - [Free local vehicle
	// listings](https://support.google.com/merchants/answer/11544533).
	//   "YOUTUBE_AFFILIATE" - [Youtube
	// Affiliate](https://support.google.com/youtube/answer/13376398).
	//   "YOUTUBE_SHOPPING" - [YouTube
	// Shopping](https://support.google.com/merchants/answer/13478370).
	//   "CLOUD_RETAIL" - [Cloud
	// retail](https://cloud.google.com/solutions/retail).
	//   "LOCAL_CLOUD_RETAIL" - [Local cloud
	// retail](https://cloud.google.com/solutions/retail).
	//   "PRODUCT_REVIEWS" - [Product
	// Reviews](https://support.google.com/merchants/answer/14620732).
	//   "MERCHANT_REVIEWS" - [Merchant
	// Reviews](https://developers.google.com/merchant-review-feeds).
	//   "YOUTUBE_CHECKOUT" - YouTube Checkout .
	ReportingContext string `json:"reportingContext,omitempty"`
	// ForceSendFields is a list of field names (e.g. "NewValue") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "NewValue") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

ProductChange: The change that happened to the product including old value, new value, country code as the region code and reporting context.

func (ProductChange) MarshalJSON

func (s ProductChange) MarshalJSON() ([]byte, error)

type ProductStatusChangeMessage

type ProductStatusChangeMessage struct {
	// Account: The target account that owns the entity that changed. Format :
	// `accounts/{merchant_id}`
	Account string `json:"account,omitempty"`
	// Attribute: The attribute in the resource that changed, in this case it will
	// be always `Status`.
	//
	// Possible values:
	//   "ATTRIBUTE_UNSPECIFIED" - Unspecified attribute
	//   "STATUS" - Status of the changed entity
	Attribute string `json:"attribute,omitempty"`
	// Changes: A message to describe the change that happened to the product
	Changes []*ProductChange `json:"changes,omitempty"`
	// EventTime: The time at which the event was generated. If you want to order
	// the notification messages you receive you should rely on this field not on
	// the order of receiving the notifications.
	EventTime string `json:"eventTime,omitempty"`
	// ExpirationTime: Optional. The product expiration time. This field will not
	// bet set if the notification is sent for a product deletion event.
	ExpirationTime string `json:"expirationTime,omitempty"`
	// ManagingAccount: The account that manages the merchant's account. can be the
	// same as merchant id if it is standalone account. Format :
	// `accounts/{service_provider_id}`
	ManagingAccount string `json:"managingAccount,omitempty"`
	// Resource: The product name. Format: `accounts/{account}/products/{product}`
	Resource string `json:"resource,omitempty"`
	// ResourceId: The product id.
	ResourceId string `json:"resourceId,omitempty"`
	// ResourceType: The resource that changed, in this case it will always be
	// `Product`.
	//
	// Possible values:
	//   "RESOURCE_UNSPECIFIED" - Unspecified resource
	//   "PRODUCT" - Resource type : product
	ResourceType string `json:"resourceType,omitempty"`
	// ForceSendFields is a list of field names (e.g. "Account") to unconditionally
	// include in API requests. By default, fields with empty or default values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Account") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

ProductStatusChangeMessage: The message that the merchant will receive to notify about product status change event

func (ProductStatusChangeMessage) MarshalJSON

func (s ProductStatusChangeMessage) MarshalJSON() ([]byte, error)

type Reason

type Reason struct {
	// Action: Optional. An action that needs to be performed to solve the problem
	// represented by this reason. This action will always be available. Should be
	// rendered as a link or button next to the summarizing message. For example,
	// the review may be available only once the business configure all required
	// attributes. In such a situation this action can be a link to the form, where
	// they can fill the missing attribute to unblock the main action.
	Action *Action `json:"action,omitempty"`
	// Detail: Detailed explanation of the reason. Should be displayed as a hint if
	// present.
	Detail string `json:"detail,omitempty"`
	// Message: Messages summarizing the reason, why the action is not available.
	// For example: "Review requested on Jan 03. Review requests can take a few
	// days to complete."
	Message string `json:"message,omitempty"`
	// ForceSendFields is a list of field names (e.g. "Action") to unconditionally
	// include in API requests. By default, fields with empty or default values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Action") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

Reason: A single reason why the action is not available.

func (Reason) MarshalJSON

func (s Reason) MarshalJSON() ([]byte, error)

type Region

type Region struct {
	// Code: The [CLDR territory code]
	// (http://www.unicode.org/repos/cldr/tags/latest/common/main/en.xml)
	Code string `json:"code,omitempty"`
	// Name: The localized name of the region. For region with code='001' the value
	// is 'All countries' or the equivalent in other languages.
	Name string `json:"name,omitempty"`
	// ForceSendFields is a list of field names (e.g. "Code") to unconditionally
	// include in API requests. By default, fields with empty or default values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Code") to include in API requests
	// with the JSON null value. By default, fields with empty values are omitted
	// from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

Region: Region with code and localized name.

func (Region) MarshalJSON

func (s Region) MarshalJSON() ([]byte, error)

type RenderAccountIssuesResponse

type RenderAccountIssuesResponse struct {
	// RenderedIssues: List of account issues for a given account. This list can be
	// shown with compressed, expandable items. In the compressed form, the title
	// and impact should be shown for each issue. Once the issue is expanded, the
	// detailed content and available actions should be rendered.
	RenderedIssues []*RenderedIssue `json:"renderedIssues,omitempty"`

	// ServerResponse contains the HTTP response code and headers from the server.
	googleapi.ServerResponse `json:"-"`
	// ForceSendFields is a list of field names (e.g. "RenderedIssues") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "RenderedIssues") to include in
	// API requests with the JSON null value. By default, fields with empty values
	// are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

RenderAccountIssuesResponse: Response containing an issue resolution content and actions for listed account issues.

func (RenderAccountIssuesResponse) MarshalJSON

func (s RenderAccountIssuesResponse) MarshalJSON() ([]byte, error)

type RenderIssuesRequestPayload

type RenderIssuesRequestPayload struct {
	// ContentOption: Optional. How the detailed content should be returned.
	// Default option is to return the content as a pre-rendered HTML text.
	//
	// Possible values:
	//   "CONTENT_OPTION_UNSPECIFIED" - Default value. Will never be provided by
	// the API.
	//   "PRE_RENDERED_HTML" - Returns the detail of the issue as a pre-rendered
	// HTML text.
	ContentOption string `json:"contentOption,omitempty"`
	// UserInputActionOption: Optional. How actions with user input form should be
	// handled. If not provided, actions will be returned as links that points the
	// business to Merchant Center where they can request the action.
	//
	// Possible values:
	//   "USER_INPUT_ACTION_RENDERING_OPTION_UNSPECIFIED" - Default value. Will
	// never be provided by the API.
	//   "REDIRECT_TO_MERCHANT_CENTER" - Actions that require user input are
	// represented only as links that points the business to Merchant Center where
	// they can request the action. Provides easier to implement alternative to
	// `BUILT_IN_USER_INPUT_ACTIONS`.
	//   "BUILT_IN_USER_INPUT_ACTIONS" - Returns content and input form definition
	// for each complex action. Your application needs to display this content and
	// input form to the business before they can request processing of the action.
	// To start the action, your application needs to call the `triggeraction`
	// method.
	UserInputActionOption string `json:"userInputActionOption,omitempty"`
	// ForceSendFields is a list of field names (e.g. "ContentOption") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "ContentOption") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

RenderIssuesRequestPayload: The payload for configuring how the content should be rendered.

func (RenderIssuesRequestPayload) MarshalJSON

func (s RenderIssuesRequestPayload) MarshalJSON() ([]byte, error)

type RenderProductIssuesResponse

type RenderProductIssuesResponse struct {
	// RenderedIssues: List of issues for a given product. This list can be shown
	// with compressed, expandable items. In the compressed form, the title and
	// impact should be shown for each issue. Once the issue is expanded, the
	// detailed content and available actions should be rendered.
	RenderedIssues []*RenderedIssue `json:"renderedIssues,omitempty"`

	// ServerResponse contains the HTTP response code and headers from the server.
	googleapi.ServerResponse `json:"-"`
	// ForceSendFields is a list of field names (e.g. "RenderedIssues") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "RenderedIssues") to include in
	// API requests with the JSON null value. By default, fields with empty values
	// are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

RenderProductIssuesResponse: Response containing an issue resolution content and actions for listed product issues.

func (RenderProductIssuesResponse) MarshalJSON

func (s RenderProductIssuesResponse) MarshalJSON() ([]byte, error)

type RenderedIssue

type RenderedIssue struct {
	// Actions: A list of actionable steps that can be executed to solve the issue.
	// An example is requesting a re-review or providing arguments when business
	// disagrees with the issue. Actions that are supported in (your) third-party
	// application can be rendered as buttons and should be available to the
	// business when they expand the issue.
	Actions []*Action `json:"actions,omitempty"`
	// Impact: Clarifies the severity of the issue. The summarizing message, if
	// present, should be shown right under the title for each issue. It helps
	// business to quickly understand the impact of the issue. The detailed
	// breakdown helps the business to fully understand the impact of the issue. It
	// can be rendered as dialog that opens when the business mouse over the
	// summarized impact statement. Issues with different severity can be styled
	// differently. They may use a different color or icon to signal the difference
	// between `ERROR`, `WARNING` and `INFO`.
	Impact *Impact `json:"impact,omitempty"`
	// PrerenderedContent: Details of the issue as a pre-rendered HTML. HTML
	// elements contain CSS classes that can be used to customize the style of the
	// content. Always sanitize the HTML before embedding it directly to your
	// application. The sanitizer needs to allow basic HTML tags, such as: `div`,
	// `span`, `p`, `a`, `ul`, `li`, `table`, `tr`, `td`. For example, you can use
	// DOMPurify (https://www.npmjs.com/package/dompurify). CSS classes: *
	// `issue-detail` - top level container for the detail of the issue *
	// `callout-banners` - section of the `issue-detail` with callout banners *
	// `callout-banner` - single callout banner, inside `callout-banners` *
	// `callout-banner-info` - callout with important information (default) *
	// `callout-banner-warning` - callout with a warning * `callout-banner-error` -
	// callout informing about an error (most severe) * `issue-content` - section
	// of the `issue-detail`, contains multiple `content-element` *
	// `content-element` - content element such as a list, link or paragraph,
	// inside `issue-content` * `root-causes` - unordered list with items
	// describing root causes of the issue, inside `issue-content` *
	// `root-causes-intro` - intro text before the `root-causes` list, inside
	// `issue-content` * `segment` - section of the text, `span` inside paragraph *
	// `segment-attribute` - section of the text that represents a product
	// attribute, for example 'image\_link' * `segment-literal` - section of the
	// text that contains a special value, for example '0-1000 kg' * `segment-bold`
	// - section of the text that should be rendered as bold * `segment-italic` -
	// section of the text that should be rendered as italic * `tooltip` - used on
	// paragraphs that should be rendered with a tooltip. A section of the text in
	// such a paragraph will have a class `tooltip-text` and is intended to be
	// shown in a mouse over dialog. If the style is not used, the `tooltip-text`
	// section would be shown on a new line, after the main part of the text. *
	// `tooltip-text` - marks a section of the text within a `tooltip`, that is
	// intended to be shown in a mouse over dialog. * `tooltip-icon` - marks a
	// section of the text within a `tooltip`, that can be replaced with a tooltip
	// icon, for example '?' or 'i'. By default, this section contains a `br` tag,
	// that is separating the main text and the tooltip text when the style is not
	// used. * `tooltip-style-question` - the tooltip shows helpful information,
	// can use the '?' as an icon. * `tooltip-style-info` - the tooltip adds
	// additional information fitting to the context, can use the 'i' as an icon. *
	// `content-moderation` - marks the paragraph that explains how the issue was
	// identified. * `new-element` - Present for new elements added to the
	// pre-rendered content in the future. To make sure that a new content element
	// does not break your style, you can hide everything with this class.
	PrerenderedContent string `json:"prerenderedContent,omitempty"`
	// PrerenderedOutOfCourtDisputeSettlement: Pre-rendered HTML that contains a
	// link to the external location where the ODS can be requested and
	// instructions for how to request it. HTML elements contain CSS classes that
	// can be used to customize the style of this snippet. Always sanitize the HTML
	// before embedding it directly to your application. The sanitizer needs to
	// allow basic HTML tags, such as: `div`, `span`, `p`, `a`, `ul`, `li`,
	// `table`, `tr`, `td`. For example, you can use DOMPurify
	// (https://www.npmjs.com/package/dompurify). CSS classes: * `ods-section`* -
	// wrapper around the out-of-court dispute resolution section *
	// `ods-description`* - intro text for the out-of-court dispute resolution. It
	// may contain multiple segments and a link. * `ods-param`* - wrapper around
	// the header-value pair for parameters that the business may need to provide
	// during the ODS process. * `ods-routing-id`* - ods param for the Routing ID.
	// * `ods-reference-id`* - ods param for the Routing ID. * `ods-param-header`*
	// - header for the ODS parameter * `ods-param-value`* - value of the ODS
	// parameter. This value should be rendered in a way that it is easy for the
	// user to identify and copy. * `segment` - section of the text, `span` inside
	// paragraph * `segment-attribute` - section of the text that represents a
	// product attribute, for example 'image\_link' * `segment-literal` - section
	// of the text that contains a special value, for example '0-1000 kg' *
	// `segment-bold` - section of the text that should be rendered as bold *
	// `segment-italic` - section of the text that should be rendered as italic *
	// `tooltip` - used on paragraphs that should be rendered with a tooltip. A
	// section of the text in such a paragraph will have a class `tooltip-text` and
	// is intended to be shown in a mouse over dialog. If the style is not used,
	// the `tooltip-text` section would be shown on a new line, after the main part
	// of the text. * `tooltip-text` - marks a section of the text within a
	// `tooltip`, that is intended to be shown in a mouse over dialog. *
	// `tooltip-icon` - marks a section of the text within a `tooltip`, that can be
	// replaced with a tooltip icon, for example '?' or 'i'. By default, this
	// section contains a `br` tag, that is separating the main text and the
	// tooltip text when the style is not used. * `tooltip-style-question` - the
	// tooltip shows helpful information, can use the '?' as an icon. *
	// `tooltip-style-info` - the tooltip adds additional information fitting to
	// the context, can use the 'i' as an icon.
	PrerenderedOutOfCourtDisputeSettlement string `json:"prerenderedOutOfCourtDisputeSettlement,omitempty"`
	// Title: Title of the issue.
	Title string `json:"title,omitempty"`
	// ForceSendFields is a list of field names (e.g. "Actions") to unconditionally
	// include in API requests. By default, fields with empty or default values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Actions") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

RenderedIssue: An issue affecting specific business or their product.

func (RenderedIssue) MarshalJSON

func (s RenderedIssue) MarshalJSON() ([]byte, error)

type Service

type Service struct {
	BasePath  string // API endpoint base URL
	UserAgent string // optional additional User-Agent fragment

	Issueresolution *IssueresolutionService
	// contains filtered or unexported fields
}

func New deprecated

func New(client *http.Client) (*Service, error)

New creates a new Service. It uses the provided http.Client for requests.

Deprecated: please use NewService instead. To provide a custom HTTP client, use option.WithHTTPClient. If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead.

func NewService

func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error)

NewService creates a new Service.

type TextInput

type TextInput struct {
	// AdditionalInfo: Additional info regarding the field to be displayed to the
	// business. For example, warning to not include personal identifiable
	// information. There may be more information to be shown in a tooltip.
	AdditionalInfo *TextWithTooltip `json:"additionalInfo,omitempty"`
	// AriaLabel: Text to be used as the aria-label
	// (https://www.w3.org/TR/WCAG20-TECHS/ARIA14.html) for the input.
	AriaLabel string `json:"ariaLabel,omitempty"`
	// FormatInfo: Information about the required format. If present, it should be
	// shown close to the input field to help the business to provide a correct
	// value. For example: "VAT numbers should be in a format similar to
	// SK9999999999"
	FormatInfo string `json:"formatInfo,omitempty"`
	// Type: Type of the text input
	//
	// Possible values:
	//   "TEXT_INPUT_TYPE_UNSPECIFIED" - Default value. Will never be provided by
	// the API.
	//   "GENERIC_SHORT_TEXT" - Used when a short text is expected. The field can
	// be rendered as a [text
	// field](https://www.w3.org/TR/2012/WD-html-markup-20121025/input.text.html#inp
	// ut.text).
	//   "GENERIC_LONG_TEXT" - Used when a longer text is expected. The field
	// should be rendered as a
	// [textarea](https://www.w3.org/TR/2012/WD-html-markup-20121025/textarea.html#t
	// extarea).
	Type string `json:"type,omitempty"`
	// ForceSendFields is a list of field names (e.g. "AdditionalInfo") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "AdditionalInfo") to include in
	// API requests with the JSON null value. By default, fields with empty values
	// are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

TextInput: Text input allows the business to provide a text value.

func (TextInput) MarshalJSON

func (s TextInput) MarshalJSON() ([]byte, error)

type TextInputValue

type TextInputValue struct {
	// Value: Required. Text provided by the business.
	Value string `json:"value,omitempty"`
	// ForceSendFields is a list of field names (e.g. "Value") to unconditionally
	// include in API requests. By default, fields with empty or default values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Value") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

TextInputValue: Value for text input field.

func (TextInputValue) MarshalJSON

func (s TextInputValue) MarshalJSON() ([]byte, error)

type TextWithTooltip

type TextWithTooltip struct {
	// SimpleTooltipValue: Value of the tooltip as a simple text.
	SimpleTooltipValue string `json:"simpleTooltipValue,omitempty"`
	// SimpleValue: Value of the message as a simple text.
	SimpleValue string `json:"simpleValue,omitempty"`
	// TooltipIconStyle: The suggested type of an icon for tooltip, if a tooltip is
	// present.
	//
	// Possible values:
	//   "TOOLTIP_ICON_STYLE_UNSPECIFIED" - Default value. Will never be provided
	// by the API.
	//   "INFO" - Used when the tooltip adds additional information to the context,
	// the 'i' can be used as an icon.
	//   "QUESTION" - Used when the tooltip shows helpful information, the '?' can
	// be used as an icon.
	TooltipIconStyle string `json:"tooltipIconStyle,omitempty"`
	// ForceSendFields is a list of field names (e.g. "SimpleTooltipValue") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "SimpleTooltipValue") to include
	// in API requests with the JSON null value. By default, fields with empty
	// values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

TextWithTooltip: Block of text that may contain a tooltip with more information.

func (TextWithTooltip) MarshalJSON

func (s TextWithTooltip) MarshalJSON() ([]byte, error)

type TriggerActionPayload

type TriggerActionPayload struct {
	// ActionContext: Required. The context from the selected action. The value is
	// obtained from rendered issues and needs to be sent back to identify the
	// action that is being triggered.
	ActionContext string `json:"actionContext,omitempty"`
	// ActionInput: Required. Input provided by the business.
	ActionInput *ActionInput `json:"actionInput,omitempty"`
	// ForceSendFields is a list of field names (e.g. "ActionContext") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "ActionContext") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

TriggerActionPayload: The payload for the triggered action.

func (TriggerActionPayload) MarshalJSON

func (s TriggerActionPayload) MarshalJSON() ([]byte, error)

type TriggerActionResponse

type TriggerActionResponse struct {
	// Message: The message for the business.
	Message string `json:"message,omitempty"`

	// ServerResponse contains the HTTP response code and headers from the server.
	googleapi.ServerResponse `json:"-"`
	// ForceSendFields is a list of field names (e.g. "Message") to unconditionally
	// include in API requests. By default, fields with empty or default values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Message") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

TriggerActionResponse: Response informing about the started action.

func (TriggerActionResponse) MarshalJSON

func (s TriggerActionResponse) MarshalJSON() ([]byte, error)