- JSON representation
- BuiltInSimpleAction
- BuiltInSimpleActionType
- AdditionalContent
- ExternalAction
- ExternalActionType
- BuiltInUserInputAction
- ActionFlow
- InputField
- TextWithTooltip
- TooltipIconStyle
- TextInput
- TextInputType
- ChoiceInput
- ChoiceInputOption
- CheckboxInput
- Callout
- CalloutStyleHint
- Reason
An actionable step that can be executed to solve the issue.
JSON representation |
---|
{ "buttonLabel": string, "isAvailable": boolean, "reasons": [ { object ( |
Fields | |
---|---|
button |
Label of the action button. |
is |
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 |
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. |
Union field
|
|
builtin |
Action implemented and performed in (your) third-party application. The application should point the merchant to the place, where they can access the corresponding functionality or provide instructions, if the specific functionality is not available. |
external |
Action that is implemented and performed outside of (your) third-party application. The application needs to redirect the merchant to the external location where they can perform the action. |
builtin |
Action implemented and performed in (your) third-party application. The application needs to show an additional content and input form to the merchant as specified for given action. They can trigger the action only when they provided all required inputs. |
BuiltInSimpleAction
Action that is implemented and performed in (your) third-party application. Represents various functionality that is expected to be available to merchant and will help them with resolving the issue. The application should point the merchant to the place, where they can access the corresponding functionality. If the functionality is not supported, it is recommended to explain the situation to merchant and provide them with instructions how to solve the issue.
JSON representation |
---|
{ "type": enum ( |
Fields | |
---|---|
type |
The type of action that represents a functionality that is expected to be available in third-party application. |
attribute |
The attribute that needs to be updated. Present when the This field contains a code for attribute, represented in snake_case. You can find a list of product's attributes, with their codes here. |
additional |
Long text from an external source that should be available to the merchant. Present when the |
BuiltInSimpleActionType
Enum specifying the type of action in third-party application.
Enums | |
---|---|
BUILT_IN_SIMPLE_ACTION_TYPE_UNSPECIFIED |
Default value. Will never be provided by the API. |
VERIFY_PHONE |
Redirect merchant to the part of your application where they can verify their phone. |
CLAIM_WEBSITE |
Redirect merchant to the part of your application where they can claim their website. |
ADD_PRODUCTS |
Redirect merchant to the part of your application where they can add products. |
ADD_CONTACT_INFO |
Open a form where the merchant can edit their contact information. |
LINK_ADS_ACCOUNT |
Redirect merchant to the part of your application where they can link ads account. |
ADD_BUSINESS_REGISTRATION_NUMBER |
Open a form where the merchant can add their business registration number. |
EDIT_ITEM_ATTRIBUTE |
Open a form where the merchant can edit an attribute. The attribute that needs to be updated is specified in attributeCode field of the action. |
FIX_ACCOUNT_ISSUE |
Redirect merchant 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 merchant should resolve the problem on the account level. |
SHOW_ADDITIONAL_CONTENT |
Show This action will be used for example to deliver a justification from national authority. |
AdditionalContent
Long text from external source.
JSON representation |
---|
{ "title": string, "paragraphs": [ string ] } |
Fields | |
---|---|
title |
Title of the additional content; |
paragraphs[] |
Long text organized into paragraphs. |
ExternalAction
Action that is implemented and performed outside of the third-party application. It should redirect the merchant to the provided URL of an external system where they can perform the action. For example to request a review in the Merchant Center.
JSON representation |
---|
{
"type": enum ( |
Fields | |
---|---|
type |
The type of external action. |
uri |
URL to external system, for example Merchant Center, where the merchant can perform the action. |
ExternalActionType
Enum specifying the type of action that requires to redirect the merchant to an external location.
Enums | |
---|---|
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 merchant can request a review for issue related to their product. |
REVIEW_ACCOUNT_ISSUE_IN_MERCHANT_CENTER |
Redirect to Merchant Center where the merchant can request a review for issue related to their account. |
LEGAL_APPEAL_IN_HELP_CENTER |
Redirect to the form in Help Center where the merchant can request a legal appeal for the issue. |
VERIFY_IDENTITY_IN_MERCHANT_CENTER |
Redirect to Merchant Center where the merchant can perform identity verification. |
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 merchant. 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.
JSON representation |
---|
{
"actionContext": string,
"flows": [
{
object ( |
Fields | |
---|---|
action |
Internal details. Not for display but need to be sent back when triggering the action. |
flows[] |
Actions may provide multiple different flows. Merchant 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. |
ActionFlow
Flow that can be selected for an action. When merchant selects a flow, application should open a dialog with more information and input form.
JSON representation |
---|
{ "id": string, "label": string, "inputs": [ { object ( |
Fields | |
---|---|
id |
Not for display but need to be sent back for the selected action flow. |
label |
Text value describing the intent for the action flow. It can be used as an input label if merchant needs to pick one of multiple flows. For example: "I disagree with the issue" |
inputs[] |
A list of input fields. |
dialog |
Title of the request dialog. For example: "Before you request a review" |
dialog |
Label for the button to trigger the action from the action dialog. For example: "Request review" |
dialog |
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. |
dialog |
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." |
InputField
Input field that needs to be available to the merchant. If the field is marked as required, then a value needs to be provided for a successful processing of the request.
JSON representation |
---|
{ "id": string, "label": { object ( |
Fields | |
---|---|
id |
Not for display but need to be sent back for the given input field. |
label |
Input field label. There may be more information to be shown in a tooltip. |
required |
Whether the field is required. The action button needs to stay disabled till values for all required fields are provided. |
Union field value_input . Specific type of the input field. value_input can be only one of the following: |
|
text |
Input field to provide text information. Corresponds to the html input type=text or html textarea. |
choice |
Input field to select one of the offered choices. Corresponds to the html input type=radio. |
checkbox |
Input field to provide a boolean value. Corresponds to the html input type=checkbox. |
TextWithTooltip
Block of text that may contain a tooltip with more information.
JSON representation |
---|
{ "tooltipIconStyle": enum ( |
Fields | |
---|---|
tooltip |
The suggested type of an icon for tooltip, if a tooltip is present. |
Union field value . Value of the text message. The form in which the value is returned is specified with the content option request field. value can be only one of the following: |
|
simple |
Value of the message as a simple text. |
Union field tooltip_value . Text that is meant to be shown in a tooltip for the main message. The tooltip is present when there is additional content needed to be available to the merchant. The form in which the value is returned is specified with the content option request field. tooltip_value can be only one of the following: |
|
simple |
Value of the tooltip as a simple text. |
TooltipIconStyle
Enum specifying the type of an icon that is being used to display a corresponding tooltip in the Merchant Center.
Enums | |
---|---|
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. |
TextInput
Text input allows merchants to provide a text value.
JSON representation |
---|
{ "type": enum ( |
Fields | |
---|---|
type |
Type of the text input |
additional |
Additional info regarding the field to be displayed to merchant. For example, warning to not include personal identifiable information. There may be more information to be shown in a tooltip. |
format |
Information about the required format. If present, it should be shown close to the input field to help merchants to provide a correct value. For example: "VAT numbers should be in a format similar to SK9999999999" |
aria |
Text to be used as the aria-label for the input. |
TextInputType
Enum specifying the type of the text input and how it should be rendered.
Enums | |
---|---|
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. |
GENERIC_LONG_TEXT |
Used when a longer text is expected. The field should be rendered as a textarea. |
ChoiceInput
Choice input allows merchants 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 merchant. For example, additional input field can be hidden or disabled until the merchant selects the specific choice.
JSON representation |
---|
{
"options": [
{
object ( |
Fields | |
---|---|
options[] |
A list of choices. Only one option can be selected. |
ChoiceInputOption
A choice that merchant can select.
JSON representation |
---|
{ "id": string, "label": { object ( |
Fields | |
---|---|
id |
Not for display but need to be sent back for the selected choice option. |
label |
Short description of the choice option. There may be more information to be shown as a tooltip. |
additional |
Input that should be displayed when this option is selected. The additional input will not contain a |
CheckboxInput
This type has no fields.
Checkbox input allows merchants to provide a boolean value. Corresponds to the html input type=checkbox.
If merchant 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 merchant 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 merchant checks the box.
Callout
An important message that should be highlighted. Usually displayed as a banner.
JSON representation |
---|
{ "styleHint": enum ( |
Fields | |
---|---|
style |
Can be used to render messages with different severity in different styles. Snippets off all types contain important information that should be displayed to merchants. |
full |
A full message that needs to be shown to the merchant. |
CalloutStyleHint
Enum specifying the suggested style, how the message should be rendered.
Enums | |
---|---|
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. |
Reason
A single reason why the action is not available.
JSON representation |
---|
{
"message": string,
"detail": string,
"action": {
object ( |
Fields | |
---|---|
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." |
detail |
Detailed explanation of the reason. Should be displayed as a hint if present. |
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 merchant 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. |