model

package
v1.2.3 Latest Latest
Warning

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

Go to latest
Published: May 1, 2024 License: BSD-3-Clause Imports: 1 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AclRole

type AclRole struct {
	App          *App          `json:"app,omitempty"`
	CreatedAt    *time.Time    `json:"createdAt,omitempty"`
	DeletedAt    *time.Time    `json:"deletedAt,omitempty"`
	Description  string        `json:"description,omitempty"`
	Id           string        `json:"id,omitempty"`
	Integrations []Integration `json:"integrations,omitempty"`
	Name         string        `json:"name,omitempty"`       // required
	Privileges   interface{}   `json:"privileges,omitempty"` // required
	UpdatedAt    *time.Time    `json:"updatedAt,omitempty"`
	Users        []User        `json:"users,omitempty"`
}

type AclUserRole

type AclUserRole struct {
	AclRole   *AclRole   `json:"aclRole,omitempty"`
	AclRoleId string     `json:"aclRoleId,omitempty"` // required
	CreatedAt *time.Time `json:"createdAt,omitempty"`
	UpdatedAt *time.Time `json:"updatedAt,omitempty"`
	User      *User      `json:"user,omitempty"`
	UserId    string     `json:"userId,omitempty"` // required
}

type Amount

type Amount struct {
	UnitPrice       float64         `json:"unitPrice,omitempty"`  // required
	TotalPrice      float64         `json:"totalPrice,omitempty"` // required
	Quantity        float64         `json:"quantity,omitempty"`   // required
	CalculatedTaxes interface{}     `json:"calculatedTaxes,omitempty"`
	TaxRules        interface{}     `json:"taxRules,omitempty"`
	ReferencePrice  interface{}     `json:"referencePrice,omitempty"`
	ListPrice       ListPrice       `json:"listPrice,omitempty"`
	RegulationPrice RegulationPrice `json:"regulationPrice,omitempty"`
}

type App

type App struct {
	AclRole                 *AclRole           `json:"aclRole,omitempty"`
	AclRoleId               string             `json:"aclRoleId,omitempty"` // required
	ActionButtons           []AppActionButton  `json:"actionButtons,omitempty"`
	Active                  bool               `json:"activ"`        // required
	AllowDisable            bool               `json:"allowDisable"` // required
	AppSecret               string             `json:"appSecret,omitempty"`
	Author                  string             `json:"author,omitempty"`
	CmsBlocks               []AppCmsBlock      `json:"cmsBlocks,omitempty"`
	Configurable            bool               `json:"configurable"` // required
	Cookies                 interface{}        `json:"cookies,omitempty"`
	Copyright               string             `json:"copyright,omitempty"`
	CreatedAt               *time.Time         `json:"createdAt,omitempty"`
	CustomFields            interface{}        `json:"customFields,omitempty"`
	CustomFieldSets         []CustomFieldSet   `json:"customFieldSets,omitempty"`
	Description             string             `json:"description,omitempty"`
	Icon                    string             `json:"icon,omitempty"`
	IconRaw                 interface{}        `json:"iconRaw,omitempty"`
	Id                      string             `json:"id,omitempty"`
	Integration             *Integration       `json:"integration,omitempty"`
	IntegrationId           string             `json:"integrationId,omitempty"` // required
	Label                   string             `json:"label,omitempty"`         // required
	License                 string             `json:"license,omitempty"`
	MainModule              interface{}        `json:"mainModule,omitempty"`
	Modules                 interface{}        `json:"modules,omitempty"`
	Name                    string             `json:"name,omitempty"` // required
	Path                    string             `json:"path,omitempty"` // required
	PaymentMethods          []AppPaymentMethod `json:"paymentMethods,omitempty"`
	Privacy                 string             `json:"privacy,omitempty"`
	PrivacyPolicyExtensions string             `json:"privacyPolicyExtensions,omitempty"`
	Scripts                 []Script           `json:"scripts,omitempty"`
	Templates               []AppTemplate      `json:"templates,omitempty"`
	Translated              interface{}        `json:"translated,omitempty"`
	Translations            []AppTranslation   `json:"translations,omitempty"`
	UpdatedAt               *time.Time         `json:"updatedAt,omitempty"`
	Version                 string             `json:"version,omitempty"` // required
	Webhooks                []Webhook          `json:"webhooks,omitempty"`
}

type AppActionButton

type AppActionButton struct {
	Action       string                       `json:"action,omitempty"` // required
	App          *App                         `json:"app,omitempty"`
	AppId        string                       `json:"appId,omitempty"` // required
	CreatedAt    *time.Time                   `json:"createdAt,omitempty"`
	Entity       string                       `json:"entity,omitempty"` // required
	Id           string                       `json:"id,omitempty"`
	Label        string                       `json:"label,omitempty"` // required
	OpenNewTab   bool                         `json:"openNewTab"`
	Translated   interface{}                  `json:"translated,omitempty"`
	Translations []AppActionButtonTranslation `json:"translations,omitempty"`
	UpdatedAt    *time.Time                   `json:"updatedAt,omitempty"`
	Url          string                       `json:"url,omitempty"`  // required
	View         string                       `json:"view,omitempty"` // required
}

type AppActionButtonTranslation

type AppActionButtonTranslation struct {
	AppActionButton   *AppActionButton `json:"appActionButton,omitempty"`
	AppActionButtonId string           `json:"appActionButtonId,omitempty"`
	CreatedAt         *time.Time       `json:"createdAt,omitempty"`
	Label             string           `json:"label,omitempty"`
	Language          *Language        `json:"language,omitempty"`
	LanguageId        string           `json:"languageId,omitempty"`
	UpdatedAt         *time.Time       `json:"updatedAt,omitempty"`
}

type AppCmsBlock

type AppCmsBlock struct {
	App          *App                     `json:"app,omitempty"`
	AppId        string                   `json:"appId,omitempty"` // required
	Block        interface{}              `json:"block,omitempty"` // required
	CreatedAt    *time.Time               `json:"createdAt,omitempty"`
	Id           string                   `json:"id,omitempty"`
	Label        string                   `json:"label,omitempty"`
	Name         string                   `json:"name,omitempty"`     // required
	Styles       string                   `json:"styles,omitempty"`   // required
	Template     string                   `json:"template,omitempty"` // required
	Translated   interface{}              `json:"translated,omitempty"`
	Translations []AppCmsBlockTranslation `json:"translations,omitempty"`
	UpdatedAt    *time.Time               `json:"updatedAt,omitempty"`
}

type AppCmsBlockTranslation

type AppCmsBlockTranslation struct {
	AppCmsBlock   *AppCmsBlock `json:"appCmsBlock,omitempty"`
	AppCmsBlockId string       `json:"appCmsBlockId,omitempty"`
	CreatedAt     *time.Time   `json:"createdAt,omitempty"`
	Label         string       `json:"label,omitempty"`
	Language      *Language    `json:"language,omitempty"`
	LanguageId    string       `json:"languageId,omitempty"`
	UpdatedAt     *time.Time   `json:"updatedAt,omitempty"`
}

type AppPaymentMethod

type AppPaymentMethod struct {
	App             *App           `json:"app,omitempty"`
	AppId           string         `json:"appId,omitempty"`
	AppName         string         `json:"appName,omitempty"` // required
	CreatedAt       *time.Time     `json:"createdAt,omitempty"`
	FinalizeUrl     string         `json:"finalizeUrl,omitempty"`
	Id              string         `json:"id,omitempty"`
	Identifier      string         `json:"identifier,omitempty"` // required
	OriginalMedia   *Media         `json:"originalMedia,omitempty"`
	OriginalMediaId string         `json:"originalMediaId,omitempty"`
	PaymentMethod   *PaymentMethod `json:"paymentMethod,omitempty"`
	PaymentMethodId string         `json:"paymentMethodId,omitempty"` // required
	PayUrl          string         `json:"payUrl,omitempty"`
	UpdatedAt       *time.Time     `json:"updatedAt,omitempty"`
}

type AppTemplate

type AppTemplate struct {
	Active    bool       `json:"active"` // required
	App       *App       `json:"app,omitempty"`
	AppId     string     `json:"appId,omitempty"` // required
	CreatedAt *time.Time `json:"createdAt,omitempty"`
	Id        string     `json:"id,omitempty"`
	Path      string     `json:"path,omitempty"`     // required
	Template  string     `json:"template,omitempty"` // required
	UpdatedAt *time.Time `json:"updatedAt,omitempty"`
}

type AppTranslation

type AppTranslation struct {
	App                     *App        `json:"app,omitempty"`
	AppId                   string      `json:"appId,omitempty"`
	CreatedAt               *time.Time  `json:"createdAt,omitempty"`
	CustomFields            interface{} `json:"customFields,omitempty"`
	Description             string      `json:"description,omitempty"`
	Label                   string      `json:"label,omitempty"`
	Language                *Language   `json:"language,omitempty"`
	LanguageId              string      `json:"languageId,omitempty"`
	PrivacyPolicyExtensions string      `json:"privacyPolicyExtensions,omitempty"`
	UpdatedAt               *time.Time  `json:"updatedAt,omitempty"`
}

type CTax

type CTax struct {
	Enabled    bool    `json:"enabled"`              // required
	CurrencyId string  `json:"currencyId,omitempty"` // required
	Amount     float64 `json:"amount,omitempty"`     // required
}

type Capture

type Capture struct {
	Id                        string             `json:"id,omitempty"`
	OrderTransactionId        string             `json:"orderTransactionId,omitempty"` // required
	OrderTransactionVersionId string             `json:"orderTransactionVersionId,omitempty"`
	StateId                   string             `json:"stateId,omitempty"` // required
	ExternalReference         string             `json:"externalReference,omitempty"`
	TotalAmount               float64            `json:"totalAmount,omitempty"` // required
	Amount                    Amount             `json:"amount,omitempty"`      // required
	CustomFields              interface{}        `json:"customFields,omitempty"`
	CreatedAt                 *time.Time         `json:"createdAt,omitempty"`
	UpdatedAt                 *time.Time         `json:"updatedAt,omitempty"`
	StateMachineState         *StateMachineState `json:"stateMachineState,omitempty"`
	Transaction               interface{}        `json:"transaction,omitempty"`
	Refunds                   Refund             `json:"refunds,omitempty"`
}

type Category

type Category struct {
	Active                  bool                  `json:"active"`
	AfterCategoryId         string                `json:"afterCategoryId,omitempty"`
	AfterCategoryVersionId  string                `json:"afterCategoryVersionId,omitempty"`
	AutoIncrement           float64               `json:"autoIncrement,omitempty"`
	Breadcrumb              interface{}           `json:"breadcrumb,omitempty"`
	ChildCount              float64               `json:"childCount,omitempty"`
	Children                []Category            `json:"children,omitempty"`
	CmsPage                 *CmsPage              `json:"cmsPage,omitempty"`
	CmsPageId               string                `json:"cmsPageId,omitempty"`
	CmsPageVersionId        string                `json:"cmsPageVersionId,omitempty"`
	CreatedAt               *time.Time            `json:"createdAt,omitempty"`
	CustomFields            interface{}           `json:"customFields,omitempty"`
	Description             string                `json:"description"`
	DisplayNestedProducts   bool                  `json:"displayNestedProducts"` // required
	ExternalLink            string                `json:"externalLink,omitempty"`
	FooterSalesChannels     []SalesChannel        `json:"footerSalesChannels,omitempty"`
	Id                      string                `json:"id,omitempty"`
	InternalLink            string                `json:"internalLink,omitempty"`
	Keywords                string                `json:"keywords,omitempty"`
	Level                   float64               `json:"level,omitempty"`
	LinkNewTab              bool                  `json:"linkNewTab"`
	LinkType                string                `json:"linkType,omitempty"`
	MainCategories          []MainCategory        `json:"mainCategories,omitempty"`
	Media                   *Media                `json:"media,omitempty"`
	MediaId                 *string               `json:"mediaId"`
	MetaDescription         string                `json:"metaDescription"`
	MetaTitle               string                `json:"metaTitle"`
	Name                    string                `json:"name,omitempty"` // required
	NavigationSalesChannels []SalesChannel        `json:"navigationSalesChannels,omitempty"`
	NestedProducts          []Product             `json:"nestedProducts,omitempty"`
	Parent                  *Category             `json:"parent,omitempty"`
	ParentId                string                `json:"parentId,omitempty"`
	ParentVersionId         string                `json:"parentVersionId,omitempty"`
	Path                    string                `json:"path,omitempty"`
	ProductAssignmentType   string                `json:"productAssignmentType,omitempty"` // required
	Products                []Product             `json:"products,omitempty"`
	ProductStream           *ProductStream        `json:"productStream,omitempty"`
	ProductStreamId         string                `json:"productStreamId,omitempty"`
	SeoUrls                 []SeoUrl              `json:"seoUrls,omitempty"`
	ServiceSalesChannels    []SalesChannel        `json:"serviceSalesChannels,omitempty"`
	SlotConfig              interface{}           `json:"slotConfig,omitempty"`
	Tags                    []Tag                 `json:"tags,omitempty"`
	Translated              interface{}           `json:"translated,omitempty"`
	Translations            []CategoryTranslation `json:"translations,omitempty"`
	Type                    string                `json:"type,omitempty"` // required
	UpdatedAt               *time.Time            `json:"updatedAt,omitempty"`
	VersionId               string                `json:"versionId,omitempty"`
	Visible                 bool                  `json:"visible"`
}

type CategoryTag

type CategoryTag struct {
	Category          *Category `json:"category,omitempty"`
	CategoryId        string    `json:"categoryId,omitempty"` // required
	CategoryVersionId string    `json:"categoryVersionId,omitempty"`
	Tag               *Tag      `json:"tag,omitempty"`
	TagId             string    `json:"tagId,omitempty"` // required
}

type CategoryTranslation

type CategoryTranslation struct {
	Breadcrumb        interface{} `json:"breadcrumb,omitempty"`
	Category          *Category   `json:"category,omitempty"`
	CategoryId        string      `json:"categoryId,omitempty"`
	CategoryVersionId string      `json:"categoryVersionId,omitempty"`
	CreatedAt         *time.Time  `json:"createdAt,omitempty"`
	CustomFields      interface{} `json:"customFields,omitempty"`
	Description       string      `json:"description,omitempty"`
	ExternalLink      string      `json:"externalLink,omitempty"`
	InternalLink      string      `json:"internalLink,omitempty"`
	Keywords          string      `json:"keywords,omitempty"`
	Language          *Language   `json:"language,omitempty"`
	LanguageId        string      `json:"languageId,omitempty"`
	LinkNewTab        bool        `json:"linkNewTab"`
	LinkType          string      `json:"linkType,omitempty"`
	MetaDescription   string      `json:"metaDescription,omitempty"`
	MetaTitle         string      `json:"metaTitle,omitempty"`
	Name              string      `json:"name,omitempty"`
	SlotConfig        interface{} `json:"slotConfig,omitempty"`
	UpdatedAt         *time.Time  `json:"updatedAt,omitempty"`
}

type CmsBlock

type CmsBlock struct {
	BackgroundColor     string      `json:"backgroundColor,omitempty"`
	BackgroundMedia     *Media      `json:"backgroundMedia,omitempty"`
	BackgroundMediaId   string      `json:"backgroundMediaId,omitempty"`
	BackgroundMediaMode string      `json:"backgroundMediaMode,omitempty"`
	CmsSectionVersionId string      `json:"cmsSectionVersionId,omitempty"`
	CreatedAt           *time.Time  `json:"createdAt,omitempty"`
	CssClass            string      `json:"cssClass,omitempty"`
	CustomFields        interface{} `json:"customFields,omitempty"`
	Id                  string      `json:"id,omitempty"`
	Locked              bool        `json:"locked"`
	MarginBottom        string      `json:"marginBottom,omitempty"`
	MarginLeft          string      `json:"marginLeft,omitempty"`
	MarginRight         string      `json:"marginRight,omitempty"`
	MarginTop           string      `json:"marginTop,omitempty"`
	Name                string      `json:"name,omitempty"`
	Position            float64     `json:"position,omitempty"` // required
	Section             *CmsSection `json:"section,omitempty"`
	SectionId           string      `json:"sectionId,omitempty"`
	SectionPosition     string      `json:"sectionPosition,omitempty"`
	Slots               []CmsSlot   `json:"slots,omitempty"`
	Type                string      `json:"type,omitempty"` // required
	UpdatedAt           *time.Time  `json:"updatedAt,omitempty"`
	VersionId           string      `json:"versionId,omitempty"`
}

type CmsPage

type CmsPage struct {
	Categories        []Category           `json:"categories,omitempty"`
	Config            interface{}          `json:"config,omitempty"`
	CreatedAt         *time.Time           `json:"createdAt,omitempty"`
	CustomFields      interface{}          `json:"customFields,omitempty"`
	Entity            string               `json:"entity,omitempty"`
	HomeSalesChannels []SalesChannel       `json:"homeSalesChannels,omitempty"`
	Id                string               `json:"id,omitempty"`
	LandingPages      []LandingPage        `json:"landingPages,omitempty"`
	Locked            bool                 `json:"locked"`
	Name              string               `json:"name,omitempty"`
	PreviewMedia      *Media               `json:"previewMedia,omitempty"`
	PreviewMediaId    string               `json:"previewMediaId,omitempty"`
	Products          []Product            `json:"products,omitempty"`
	Sections          []CmsSection         `json:"sections,omitempty"`
	Translated        interface{}          `json:"translated,omitempty"`
	Translations      []CmsPageTranslation `json:"translations,omitempty"`
	Type              string               `json:"type,omitempty"` // required
	UpdatedAt         *time.Time           `json:"updatedAt,omitempty"`
	VersionId         string               `json:"versionId,omitempty"`
}

type CmsPageTranslation

type CmsPageTranslation struct {
	CmsPage          *CmsPage    `json:"cmsPage,omitempty"`
	CmsPageId        string      `json:"cmsPageId,omitempty"`
	CmsPageVersionId string      `json:"cmsPageVersionId,omitempty"`
	CreatedAt        *time.Time  `json:"createdAt,omitempty"`
	CustomFields     interface{} `json:"customFields,omitempty"`
	Language         *Language   `json:"language,omitempty"`
	LanguageId       string      `json:"languageId,omitempty"`
	Name             string      `json:"name,omitempty"`
	UpdatedAt        *time.Time  `json:"updatedAt,omitempty"`
}

type CmsSection

type CmsSection struct {
	BackgroundColor     string      `json:"backgroundColor,omitempty"`
	BackgroundMedia     *Media      `json:"backgroundMedia,omitempty"`
	BackgroundMediaId   string      `json:"backgroundMediaId,omitempty"`
	BackgroundMediaMode string      `json:"backgroundMediaMode,omitempty"`
	Blocks              []CmsBlock  `json:"blocks,omitempty"`
	CmsPageVersionId    string      `json:"cmsPageVersionId,omitempty"`
	CreatedAt           *time.Time  `json:"createdAt,omitempty"`
	CssClass            string      `json:"cssClass,omitempty"`
	CustomFields        interface{} `json:"customFields,omitempty"`
	Id                  string      `json:"id,omitempty"`
	Locked              bool        `json:"locked"`
	MobileBehavior      string      `json:"mobileBehavior,omitempty"`
	Name                string      `json:"name,omitempty"`
	Page                *CmsPage    `json:"page,omitempty"`
	PageId              string      `json:"pageId,omitempty"`   // required
	Position            float64     `json:"position,omitempty"` // required
	SizingMode          string      `json:"sizingMode,omitempty"`
	Type                string      `json:"type,omitempty"` // required
	UpdatedAt           *time.Time  `json:"updatedAt,omitempty"`
	VersionId           string      `json:"versionId,omitempty"`
}

type CmsSlot

type CmsSlot struct {
	Block             *CmsBlock            `json:"block,omitempty"`
	BlockId           string               `json:"blockId,omitempty"` // required
	CmsBlockVersionId string               `json:"cmsBlockVersionId,omitempty"`
	Config            interface{}          `json:"config,omitempty"`
	CreatedAt         *time.Time           `json:"createdAt,omitempty"`
	CustomFields      interface{}          `json:"customFields,omitempty"`
	Data              interface{}          `json:"data,omitempty"`
	Id                string               `json:"id,omitempty"`
	Locked            bool                 `json:"locked"`
	Slot              string               `json:"slot,omitempty"` // required
	Translated        interface{}          `json:"translated,omitempty"`
	Translations      []CmsSlotTranslation `json:"translations,omitempty"`
	Type              string               `json:"type,omitempty"` // required
	UpdatedAt         *time.Time           `json:"updatedAt,omitempty"`
	VersionId         string               `json:"versionId,omitempty"`
}

type CmsSlotTranslation

type CmsSlotTranslation struct {
	CmsSlot          *CmsSlot    `json:"cmsSlot,omitempty"`
	CmsSlotId        string      `json:"cmsSlotId,omitempty"`
	CmsSlotVersionId string      `json:"cmsSlotVersionId,omitempty"`
	Config           interface{} `json:"config,omitempty"`
	CreatedAt        *time.Time  `json:"createdAt,omitempty"`
	CustomFields     interface{} `json:"customFields,omitempty"`
	Language         *Language   `json:"language,omitempty"`
	LanguageId       string      `json:"languageId,omitempty"`
	UpdatedAt        *time.Time  `json:"updatedAt,omitempty"`
}

type Country

type Country struct {
	Active                         bool                      `json:"active"`
	AddressFormat                  string                    `json:"addressFormat,omitempty"` // required
	CheckVatIdPattern              bool                      `json:"checkVatIdPattern"`
	CompanyTax                     interface{}               `json:"companyTax,omitempty"`
	CompanyTaxFree                 bool                      `json:"companyTaxFree"`
	CreatedAt                      *time.Time                `json:"createdAt,omitempty"`
	CurrencyCountryRoundings       []CurrencyCountryRounding `json:"currencyCountryRoundings,omitempty"`
	CustomerAddresses              []CustomerAddress         `json:"customerAddresses,omitempty"`
	CustomerTax                    *CTax                     `json:"customerTax,omitempty"`
	CustomFields                   *CTax                     `json:"customFields,omitempty"`
	DisplayStateInRegistration     bool                      `json:"displayStateInRegistration"`
	ForceStateInRegistration       bool                      `json:"forceStateInRegistration"`
	Id                             string                    `json:"id,omitempty"`
	Iso                            string                    `json:"iso,omitempty"`
	Iso3                           string                    `json:"iso3,omitempty"`
	Name                           string                    `json:"name,omitempty"` // required
	OrderAddresses                 []OrderAddress            `json:"orderAddresses,omitempty"`
	Position                       float64                   `json:"position,omitempty"`
	SalesChannelDefaultAssignments []SalesChannel            `json:"salesChannelDefaultAssignments,omitempty"`
	SalesChannels                  []SalesChannel            `json:"salesChannels,omitempty"`
	ShippingAvailable              bool                      `json:"shippingAvailable"`
	States                         []CountryState            `json:"states,omitempty"`
	TaxFree                        bool                      `json:"taxFree"`
	TaxRules                       []TaxRule                 `json:"taxRules,omitempty"`
	Translated                     interface{}               `json:"translated,omitempty"`
	Translations                   []CountryTranslation      `json:"translations,omitempty"`
	UpdatedAt                      *time.Time                `json:"updatedAt,omitempty"`
	VatIdPattern                   string                    `json:"vatIdPattern,omitempty"`
	VatIdRequired                  bool                      `json:"vatIdRequired"`
}

type CountryState

type CountryState struct {
	Active            bool                      `json:"active"`
	Country           *Country                  `json:"country,omitempty"`
	CountryId         string                    `json:"countryId,omitempty"` // required
	CreatedAt         *time.Time                `json:"createdAt,omitempty"`
	CustomerAddresses []CustomerAddress         `json:"customerAddresses,omitempty"`
	CustomFields      interface{}               `json:"customFields,omitempty"`
	Id                string                    `json:"id,omitempty"`
	Name              string                    `json:"name,omitempty"` // required
	OrderAddresses    []OrderAddress            `json:"orderAddresses,omitempty"`
	Position          float64                   `json:"position,omitempty"`
	ShortCode         string                    `json:"shortCode,omitempty"` // required
	Translated        interface{}               `json:"translated,omitempty"`
	Translations      []CountryStateTranslation `json:"translations,omitempty"`
	UpdatedAt         *time.Time                `json:"updatedAt,omitempty"`
}

type CountryStateTranslation

type CountryStateTranslation struct {
	CountryState   *CountryState `json:"countryState,omitempty"`
	CountryStateId string        `json:"countryStateId,omitempty"`
	CreatedAt      *time.Time    `json:"createdAt,omitempty"`
	CustomFields   interface{}   `json:"customFields,omitempty"`
	Language       *Language     `json:"language,omitempty"`
	LanguageId     string        `json:"languageId,omitempty"`
	Name           string        `json:"name,omitempty"`
	UpdatedAt      *time.Time    `json:"updatedAt,omitempty"`
}

type CountryTranslation

type CountryTranslation struct {
	Country      *Country    `json:"country,omitempty"`
	CountryId    string      `json:"countryId,omitempty"`
	CreatedAt    *time.Time  `json:"createdAt,omitempty"`
	CustomFields interface{} `json:"customFields,omitempty"`
	Language     *Language   `json:"language,omitempty"`
	LanguageId   string      `json:"languageId,omitempty"`
	Name         string      `json:"name,omitempty"`
	UpdatedAt    *time.Time  `json:"updatedAt,omitempty"`
}

type Currency

type Currency struct {
	CountryRoundings               []CurrencyCountryRounding `json:"countryRoundings,omitempty"`
	CreatedAt                      *time.Time                `json:"createdAt,omitempty"`
	CustomFields                   interface{}               `json:"customFields,omitempty"`
	Factor                         float64                   `json:"factor,omitempty"` // required
	Id                             string                    `json:"id,omitempty"`
	IsoCode                        string                    `json:"isoCode,omitempty"` // required
	IsSystemDefault                bool                      `json:"isSystemDefault"`
	ItemRounding                   Rounding                  `json:"itemRounding,omitempty"` // required
	Name                           string                    `json:"name,omitempty"`         // required
	Orders                         []Order                   `json:"orders,omitempty"`
	Position                       float64                   `json:"position,omitempty"`
	ProductExports                 []ProductExport           `json:"productExports,omitempty"`
	PromotionDiscountPrices        []PromotionDiscountPrices `json:"promotionDiscountPrices,omitempty"`
	SalesChannelDefaultAssignments []SalesChannel            `json:"salesChannelDefaultAssignments,omitempty"`
	SalesChannelDomains            []SalesChannelDomain      `json:"salesChannelDomains,omitempty"`
	SalesChannels                  []SalesChannel            `json:"salesChannels,omitempty"`
	ShortName                      string                    `json:"shortName,omitempty"` // required
	Symbol                         string                    `json:"symbol,omitempty"`    // required
	TaxFreeFrom                    float64                   `json:"taxFreeFrom,omitempty"`
	TotalRounding                  Rounding                  `json:"totalRounding,omitempty"` // required
	Translated                     interface{}               `json:"translated,omitempty"`
	Translations                   []CurrencyTranslation     `json:"translations,omitempty"`
	UpdatedAt                      *time.Time                `json:"updatedAt,omitempty"`
}

type CurrencyCountryRounding

type CurrencyCountryRounding struct {
	Country       *Country   `json:"country,omitempty"`
	CountryId     string     `json:"countryId,omitempty"` // required
	CreatedAt     *time.Time `json:"createdAt,omitempty"`
	Currency      *Currency  `json:"currency,omitempty"`
	CurrencyId    string     `json:"currencyId,omitempty"` // required
	Id            string     `json:"id,omitempty"`
	ItemRounding  *Rounding  `json:"itemRounding,omitempty"`
	TotalRounding *Rounding  `json:"totalRounding,omitempty"`
	UpdatedAt     *time.Time `json:"updatedAt,omitempty"`
}

type CurrencyTranslation

type CurrencyTranslation struct {
	CreatedAt    *time.Time  `json:"createdAt,omitempty"`
	Currency     *Currency   `json:"currency,omitempty"`
	CurrencyId   string      `json:"currencyId,omitempty"`
	CustomFields interface{} `json:"customFields,omitempty"`
	Language     *Language   `json:"language,omitempty"`
	LanguageId   string      `json:"languageId,omitempty"`
	Name         string      `json:"name,omitempty"`
	ShortName    string      `json:"shortName,omitempty"`
	UpdatedAt    *time.Time  `json:"updatedAt,omitempty"`
}

type CustomField

type CustomField struct {
	Active                    bool                       `json:"active"`
	Config                    interface{}                `json:"config,omitempty"`
	CreatedAt                 *time.Time                 `json:"createdAt,omitempty"`
	CustomFieldSet            *CustomFieldSet            `json:"customFieldSet,omitempty"`
	CustomFieldSetId          string                     `json:"customFieldSetId,omitempty"`
	Id                        string                     `json:"id,omitempty"`
	Name                      string                     `json:"name,omitempty"` // required
	ProductSearchConfigFields []ProductSearchConfigField `json:"productSearchConfigFields,omitempty"`
	Type                      string                     `json:"type,omitempty"` // required
	UpdatedAt                 *time.Time                 `json:"updatedAt,omitempty"`
}

type CustomFieldSet

type CustomFieldSet struct {
	Active       bool                     `json:"active"`
	App          *App                     `json:"app,omitempty"`
	AppId        string                   `json:"appId,omitempty"`
	Config       interface{}              `json:"config,omitempty"`
	CreatedAt    *time.Time               `json:"createdAt,omitempty"`
	CustomFields []CustomField            `json:"customFields,omitempty"`
	Global       bool                     `json:"global"`
	Id           string                   `json:"id,omitempty"`
	Name         string                   `json:"name,omitempty"` // required
	Position     float64                  `json:"position,omitempty"`
	Products     []Product                `json:"products,omitempty"`
	Relations    []CustomFieldSetRelation `json:"relations,omitempty"`
	UpdatedAt    *time.Time               `json:"updatedAt,omitempty"`
}

type CustomFieldSetRelation

type CustomFieldSetRelation struct {
	CreatedAt        *time.Time      `json:"createdAt,omitempty"`
	CustomFieldSet   *CustomFieldSet `json:"customFieldSet,omitempty"`
	CustomFieldSetId string          `json:"customFieldSetId,omitempty"` // required
	EntityName       string          `json:"entityName,omitempty"`       // required
	Id               string          `json:"id,omitempty"`
	UpdatedAt        *time.Time      `json:"updatedAt,omitempty"`
}

type CustomPrice

type CustomPrice struct {
	CreatedAt        *time.Time     `json:"createdAt,omitempty"`
	Customer         *Customer      `json:"customer,omitempty"`
	CustomerGroup    *CustomerGroup `json:"customerGroup,omitempty"`
	CustomerGroupId  string         `json:"customerGroupId,omitempty"`
	CustomerId       string         `json:"customerId,omitempty"`
	Id               string         `json:"id,omitempty"`
	Price            interface{}    `json:"price,omitempty"` // required
	Product          *Product       `json:"product,omitempty"`
	ProductId        string         `json:"productId,omitempty"` // required
	ProductVersionId string         `json:"productVersionId,omitempty"`
	UpdatedAt        *time.Time     `json:"updatedAt,omitempty"`
}

type Customer

type Customer struct {
	Active                    bool               `json:"active"`
	Addresses                 []CustomerAddress  `json:"addresses,omitempty"`
	AffiliateCode             string             `json:"affiliateCode,omitempty"`
	AutoIncrement             float64            `json:"autoIncrement,omitempty"`
	Birthday                  *time.Time         `json:"birthday,omitempty"`
	BoundSalesChannel         *SalesChannel      `json:"boundSalesChannel,omitempty"`
	BoundSalesChannelId       string             `json:"boundSalesChannelId,omitempty"`
	CampaignCode              string             `json:"campaignCode,omitempty"`
	Company                   string             `json:"company,omitempty"`
	CreatedAt                 *time.Time         `json:"createdAt,omitempty"`
	CustomerNumber            string             `json:"customerNumber,omitempty"`
	CustomFields              interface{}        `json:"customFields,omitempty"`
	DefaultBillingAddress     *CustomerAddress   `json:"defaultBillingAddress,omitempty"`
	DefaultBillingAddressId   string             `json:"defaultBillingAddressId,omitempty"`
	DefaultPaymentMethod      *PaymentMethod     `json:"defaultPaymentMethod,omitempty"`
	DefaultPaymentMethodId    string             `json:"defaultPaymentMethodId,omitempty"` // required
	DefaultShippingAddress    *CustomerAddress   `json:"defaultShippingAddress,omitempty"`
	DefaultShippingAddressId  string             `json:"defaultShippingAddressId,omitempty"`
	DoubleOptInConfirmDate    *time.Time         `json:"doubleOptInConfirmDate,omitempty"`
	DoubleOptInEmailSentDate  *time.Time         `json:"doubleOptInEmailSentDate,omitempty"`
	DoubleOptInRegistration   bool               `json:"doubleOptInRegistration"`
	Email                     string             `json:"email,omitempty"` // required
	FirstLogin                *time.Time         `json:"firstLogin,omitempty"`
	FirstName                 string             `json:"firstName,omitempty"` // required
	Group                     *CustomerGroup     `json:"group,omitempty"`
	GroupId                   string             `json:"groupId,omitempty"` // required
	Guest                     bool               `json:"guest"`
	Hash                      string             `json:"hash,omitempty"`
	Id                        string             `json:"id,omitempty"`
	Language                  *Language          `json:"language,omitempty"`
	LanguageId                string             `json:"languageId,omitempty"` // required
	LastLogin                 *time.Time         `json:"lastLogin,omitempty"`
	LastName                  string             `json:"lastName,omitempty"` // required
	LastOrderDate             *time.Time         `json:"lastOrderDate,omitempty"`
	LastPaymentMethod         *PaymentMethod     `json:"lastPaymentMethod,omitempty"`
	LastPaymentMethodId       string             `json:"lastPaymentMethodId,omitempty"`
	LegacyEncoder             string             `json:"legacyEncoder,omitempty"`
	LegacyPassword            string             `json:"legacyPassword,omitempty"`
	Newsletter                bool               `json:"newsletter"`
	NewsletterSalesChannelIds interface{}        `json:"newsletterSalesChannelIds,omitempty"`
	OrderCount                float64            `json:"orderCount,omitempty"`
	OrderCustomers            []OrderCustomer    `json:"orderCustomers,omitempty"`
	OrderTotalAmount          float64            `json:"orderTotalAmount,omitempty"`
	Password                  interface{}        `json:"password,omitempty"`
	ProductReviews            []ProductReview    `json:"productReviews,omitempty"`
	Promotions                []Promotion        `json:"promotions,omitempty"`
	RecoveryCustomer          *CustomerRecovery  `json:"recoveryCustomer,omitempty"`
	RemoteAddress             interface{}        `json:"remoteAddress,omitempty"`
	RequestedGroup            *CustomerGroup     `json:"requestedGroup,omitempty"`
	RequestedGroupId          string             `json:"requestedGroupId,omitempty"`
	SalesChannel              *SalesChannel      `json:"salesChannel,omitempty"`
	SalesChannelId            string             `json:"salesChannelId,omitempty"` // required
	Salutation                *Salutation        `json:"salutation,omitempty"`
	SalutationId              string             `json:"salutationId,omitempty"`
	TagIds                    interface{}        `json:"tagIds,omitempty"`
	Tags                      []Tag              `json:"tags,omitempty"`
	Title                     string             `json:"title,omitempty"`
	UpdatedAt                 *time.Time         `json:"updatedAt,omitempty"`
	VatIds                    interface{}        `json:"vatIds,omitempty"`
	Wishlists                 []CustomerWishlist `json:"wishlists,omitempty"`
}

type CustomerAddress

type CustomerAddress struct {
	AdditionalAddressLine1 string        `json:"additionalAddressLine1,omitempty"`
	AdditionalAddressLine2 string        `json:"additionalAddressLine2,omitempty"`
	City                   string        `json:"city,omitempty"` // required
	Company                string        `json:"company,omitempty"`
	Country                *Country      `json:"country,omitempty"`
	CountryId              string        `json:"countryId,omitempty"` // required
	CountryState           *CountryState `json:"countryState,omitempty"`
	CountryStateId         string        `json:"countryStateId,omitempty"`
	CreatedAt              *time.Time    `json:"createdAt,omitempty"`
	Customer               *Customer     `json:"customer,omitempty"`
	CustomerId             string        `json:"customerId,omitempty"` // required
	CustomFields           interface{}   `json:"customFields,omitempty"`
	Department             string        `json:"department,omitempty"`
	FirstName              string        `json:"firstName,omitempty"` // required
	Id                     string        `json:"id,omitempty"`
	LastName               string        `json:"lastName,omitempty"` // required
	PhoneNumber            string        `json:"phoneNumber,omitempty"`
	Salutation             *Salutation   `json:"salutation,omitempty"`
	SalutationId           string        `json:"salutationId,omitempty"`
	Street                 string        `json:"street,omitempty"` // required
	Title                  string        `json:"title,omitempty"`
	UpdatedAt              *time.Time    `json:"updatedAt,omitempty"`
	Zipcode                string        `json:"zipcode,omitempty"`
}

type CustomerGroup

type CustomerGroup struct {
	CreatedAt                           *time.Time                 `json:"createdAt,omitempty"`
	Customers                           []Customer                 `json:"customers,omitempty"`
	CustomFields                        interface{}                `json:"customFields,omitempty"`
	DisplayGross                        bool                       `json:"displayGross"`
	Id                                  string                     `json:"id,omitempty"`
	Name                                string                     `json:"name,omitempty"` // required
	RegistrationActive                  bool                       `json:"registrationActive"`
	RegistrationIntroduction            string                     `json:"registrationIntroduction,omitempty"`
	RegistrationOnlyCompanyRegistration bool                       `json:"registrationOnlyCompanyRegistration"`
	RegistrationSalesChannels           []SalesChannel             `json:"registrationSalesChannels,omitempty"`
	RegistrationSeoMetaDescription      string                     `json:"registrationSeoMetaDescription,omitempty"`
	RegistrationTitle                   string                     `json:"registrationTitle,omitempty"`
	SalesChannels                       []SalesChannel             `json:"salesChannels,omitempty"`
	Translated                          interface{}                `json:"translated,omitempty"`
	Translations                        []CustomerGroupTranslation `json:"translations,omitempty"`
	UpdatedAt                           *time.Time                 `json:"updatedAt,omitempty"`
}

type CustomerGroupRegistrationSalesChannels

type CustomerGroupRegistrationSalesChannels struct {
	CreatedAt       *time.Time     `json:"createdAt,omitempty"`
	CustomerGroup   *CustomerGroup `json:"customerGroup,omitempty"`
	CustomerGroupId string         `json:"customerGroupId,omitempty"`
	SalesChannel    *SalesChannel  `json:"salesChannel,omitempty"`
	SalesChannelId  string         `json:"salesChannelId,omitempty"`
}

type CustomerGroupTranslation

type CustomerGroupTranslation struct {
	CreatedAt                           *time.Time     `json:"createdAt,omitempty"`
	CustomerGroup                       *CustomerGroup `json:"customerGroup,omitempty"`
	CustomerGroupId                     string         `json:"customerGroupId,omitempty"`
	CustomFields                        interface{}    `json:"customFields,omitempty"`
	Language                            *Language      `json:"language,omitempty"`
	LanguageId                          string         `json:"languageId,omitempty"`
	Name                                string         `json:"name,omitempty"`
	RegistrationIntroduction            string         `json:"registrationIntroduction,omitempty"`
	RegistrationOnlyCompanyRegistration bool           `json:"registrationOnlyCompanyRegistration"`
	RegistrationSeoMetaDescription      string         `json:"registrationSeoMetaDescription,omitempty"`
	RegistrationTitle                   string         `json:"registrationTitle,omitempty"`
	UpdatedAt                           *time.Time     `json:"updatedAt,omitempty"`
}

type CustomerRecovery

type CustomerRecovery struct {
	CreatedAt  *time.Time `json:"createdAt,omitempty"`
	Customer   *Customer  `json:"customer,omitempty"`
	CustomerId string     `json:"customerId,omitempty"` // required
	Hash       string     `json:"hash,omitempty"`       // required
	Id         string     `json:"id,omitempty"`
	UpdatedAt  *time.Time `json:"updatedAt,omitempty"`
}

type CustomerTag

type CustomerTag struct {
	Customer   *Customer `json:"customer,omitempty"`
	CustomerId string    `json:"customerId,omitempty"` // required
	Tag        *Tag      `json:"tag,omitempty"`
	TagId      string    `json:"tagId,omitempty"` // required
}

type CustomerWishlist

type CustomerWishlist struct {
	CreatedAt      *time.Time                `json:"createdAt,omitempty"`
	Customer       *Customer                 `json:"customer,omitempty"`
	CustomerId     string                    `json:"customerId,omitempty"` // required
	CustomFields   interface{}               `json:"customFields,omitempty"`
	Id             string                    `json:"id,omitempty"`
	Products       []CustomerWishlistProduct `json:"products,omitempty"`
	SalesChannel   *SalesChannel             `json:"salesChannel,omitempty"`
	SalesChannelId string                    `json:"salesChannelId,omitempty"` // required
	UpdatedAt      *time.Time                `json:"updatedAt,omitempty"`
}

type CustomerWishlistProduct

type CustomerWishlistProduct struct {
	CreatedAt        *time.Time        `json:"createdAt,omitempty"`
	Id               string            `json:"id,omitempty"`
	Product          *Product          `json:"product,omitempty"`
	ProductId        string            `json:"productId,omitempty"` // required
	ProductVersionId string            `json:"productVersionId,omitempty"`
	UpdatedAt        *time.Time        `json:"updatedAt,omitempty"`
	Wishlist         *CustomerWishlist `json:"wishlist,omitempty"`
	WishlistId       string            `json:"wishlistId,omitempty"` // required
}

type DeadMessage

type DeadMessage struct {
	CreatedAt                 *time.Time     `json:"createdAt,omitempty"`
	Encrypted                 bool           `json:"encrypted"`
	ErrorCount                float64        `json:"errorCount,omitempty"`
	Exception                 string         `json:"exception,omitempty"`
	ExceptionFile             string         `json:"exceptionFile,omitempty"`
	ExceptionLine             float64        `json:"exceptionLine,omitempty"`
	ExceptionMessage          string         `json:"exceptionMessage,omitempty"`
	HandlerClass              string         `json:"handlerClass,omitempty"`
	Id                        string         `json:"id,omitempty"`
	NextExecutionTime         *time.Time     `json:"nextExecutionTime,omitempty"`
	OriginalMessageClass      string         `json:"originalMessageClass,omitempty"`
	ScheduledTask             *ScheduledTask `json:"scheduledTask,omitempty"`
	ScheduledTaskId           string         `json:"scheduledTaskId,omitempty"`
	SerializedOriginalMessage interface{}    `json:"serializedOriginalMessage,omitempty"`
	UpdatedAt                 *time.Time     `json:"updatedAt,omitempty"`
}

type DeliveryTime

type DeliveryTime struct {
	CreatedAt       *time.Time                `json:"createdAt,omitempty"`
	CustomFields    interface{}               `json:"customFields,omitempty"`
	Id              string                    `json:"id,omitempty"`
	Max             int64                     `json:"max,omitempty"`  // required
	Min             int64                     `json:"min,omitempty"`  // required
	Name            string                    `json:"name,omitempty"` // required
	Products        []Product                 `json:"products,omitempty"`
	ShippingMethods []ShippingMethod          `json:"shippingMethods,omitempty"`
	Translated      interface{}               `json:"translated,omitempty"`
	Translations    []DeliveryTimeTranslation `json:"translations,omitempty"`
	Unit            string                    `json:"unit,omitempty"` // required
	UpdatedAt       *time.Time                `json:"updatedAt,omitempty"`
}

type DeliveryTimeTranslation

type DeliveryTimeTranslation struct {
	CreatedAt      *time.Time    `json:"createdAt,omitempty"`
	CustomFields   interface{}   `json:"customFields,omitempty"`
	DeliveryTime   *DeliveryTime `json:"deliveryTime,omitempty"`
	DeliveryTimeId string        `json:"deliveryTimeId,omitempty"`
	Language       *Language     `json:"language,omitempty"`
	LanguageId     string        `json:"languageId,omitempty"`
	Name           string        `json:"name,omitempty"`
	UpdatedAt      *time.Time    `json:"updatedAt,omitempty"`
}

type Document

type Document struct {
	Config               interface{}   `json:"config,omitempty"` // required
	CreatedAt            *time.Time    `json:"createdAt,omitempty"`
	CustomFields         interface{}   `json:"customFields,omitempty"`
	DeepLinkCode         string        `json:"deepLinkCode,omitempty"` // required
	DependentDocuments   []Document    `json:"dependentDocuments,omitempty"`
	DocumentMediaFile    *Media        `json:"documentMediaFile,omitempty"`
	DocumentMediaFileId  string        `json:"documentMediaFileId,omitempty"`
	DocumentType         *DocumentType `json:"documentType,omitempty"`
	DocumentTypeId       string        `json:"documentTypeId,omitempty"` // required
	FileType             string        `json:"fileType,omitempty"`       // required
	Id                   string        `json:"id,omitempty"`
	Order                *Order        `json:"order,omitempty"`
	OrderId              string        `json:"orderId,omitempty"` // required
	OrderVersionId       string        `json:"orderVersionId,omitempty"`
	ReferencedDocument   *Document     `json:"referencedDocument,omitempty"`
	ReferencedDocumentId string        `json:"referencedDocumentId,omitempty"`
	Sent                 bool          `json:"sent"`
	Static               bool          `json:"static"`
	UpdatedAt            *time.Time    `json:"updatedAt,omitempty"`
}

type DocumentBaseConfig

type DocumentBaseConfig struct {
	Config         interface{}                      `json:"config,omitempty"`
	CreatedAt      *time.Time                       `json:"createdAt,omitempty"`
	CustomFields   interface{}                      `json:"customFields,omitempty"`
	DocumentNumber string                           `json:"documentNumber,omitempty"`
	DocumentType   *DocumentType                    `json:"documentType,omitempty"`
	DocumentTypeId string                           `json:"documentTypeId,omitempty"` // required
	FilenamePrefix string                           `json:"filenamePrefix,omitempty"`
	FilenameSuffix string                           `json:"filenameSuffix,omitempty"`
	Global         bool                             `json:"global"` // required
	Id             string                           `json:"id,omitempty"`
	LogoId         string                           `json:"logoId,omitempty"`
	Name           string                           `json:"name,omitempty"` // required
	SalesChannels  []DocumentBaseConfigSalesChannel `json:"salesChannels,omitempty"`
	UpdatedAt      *time.Time                       `json:"updatedAt,omitempty"`
}

type DocumentBaseConfigSalesChannel

type DocumentBaseConfigSalesChannel struct {
	CreatedAt            *time.Time          `json:"createdAt,omitempty"`
	DocumentBaseConfig   *DocumentBaseConfig `json:"documentBaseConfig,omitempty"`
	DocumentBaseConfigId string              `json:"documentBaseConfigId,omitempty"` // required
	DocumentType         *DocumentType       `json:"documentType,omitempty"`
	DocumentTypeId       string              `json:"documentTypeId,omitempty"`
	Id                   string              `json:"id,omitempty"`
	SalesChannel         *SalesChannel       `json:"salesChannel,omitempty"`
	SalesChannelId       string              `json:"salesChannelId,omitempty"`
	UpdatedAt            *time.Time          `json:"updatedAt,omitempty"`
}

type DocumentType

type DocumentType struct {
	CreatedAt                       *time.Time                       `json:"createdAt,omitempty"`
	CustomFields                    interface{}                      `json:"customFields,omitempty"`
	DocumentBaseConfigs             []DocumentBaseConfig             `json:"documentBaseConfigs,omitempty"`
	DocumentBaseConfigSalesChannels []DocumentBaseConfigSalesChannel `json:"documentBaseConfigSalesChannels,omitempty"`
	Documents                       []Document                       `json:"documents,omitempty"`
	Id                              string                           `json:"id,omitempty"`
	Name                            string                           `json:"name,omitempty"`          // required
	TechnicalName                   string                           `json:"technicalName,omitempty"` // required
	Translated                      interface{}                      `json:"translated,omitempty"`
	Translations                    []DocumentTypeTranslation        `json:"translations,omitempty"`
	UpdatedAt                       *time.Time                       `json:"updatedAt,omitempty"`
}

type DocumentTypeTranslation

type DocumentTypeTranslation struct {
	CreatedAt      *time.Time    `json:"createdAt,omitempty"`
	CustomFields   interface{}   `json:"customFields,omitempty"`
	DocumentType   *DocumentType `json:"documentType,omitempty"`
	DocumentTypeId string        `json:"documentTypeId,omitempty"`
	Language       *Language     `json:"language,omitempty"`
	LanguageId     string        `json:"languageId,omitempty"`
	Name           string        `json:"name,omitempty"`
	UpdatedAt      *time.Time    `json:"updatedAt,omitempty"`
}

type EventAction

type EventAction struct {
	ActionName    string         `json:"actionName,omitempty"`
	Active        bool           `json:"active"`
	Config        interface{}    `json:"config,omitempty"`
	CreatedAt     *time.Time     `json:"createdAt,omitempty"`
	CustomFields  interface{}    `json:"customFields,omitempty"`
	EventName     string         `json:"eventName,omitempty"`
	Id            string         `json:"id,omitempty"`
	Rules         []Rule         `json:"rules,omitempty"`
	SalesChannels []SalesChannel `json:"salesChannels,omitempty"`
	Title         string         `json:"title,omitempty"`
	UpdatedAt     *time.Time     `json:"updatedAt,omitempty"`
}

type EventActionRule

type EventActionRule struct {
	EventAction   *EventAction `json:"eventAction,omitempty"`
	EventActionId string       `json:"eventActionId,omitempty"`
	Rule          *Rule        `json:"rule,omitempty"`
	RuleId        string       `json:"ruleId,omitempty"`
}

type EventActionSalesChannel

type EventActionSalesChannel struct {
	EventAction    *EventAction  `json:"eventAction,omitempty"`
	EventActionId  string        `json:"eventActionId,omitempty"`
	SalesChannel   *SalesChannel `json:"salesChannel,omitempty"`
	SalesChannelId string        `json:"salesChannelId,omitempty"`
}

type Flow

type Flow struct {
	Active       bool           `json:"active"`
	CreatedAt    *time.Time     `json:"createdAt,omitempty"`
	CustomFields interface{}    `json:"customFields,omitempty"`
	Description  string         `json:"description,omitempty"`
	EventName    string         `json:"eventName,omitempty"` // required
	Id           string         `json:"id,omitempty"`
	Invalid      bool           `json:"invalid"`
	Name         string         `json:"name,omitempty"` // required
	Payload      interface{}    `json:"payload,omitempty"`
	Priority     float64        `json:"priority,omitempty"`
	Sequences    []FlowSequence `json:"sequences,omitempty"`
	UpdatedAt    *time.Time     `json:"updatedAt,omitempty"`
}

type FlowSequence

type FlowSequence struct {
	ActionName   string         `json:"actionName,omitempty"`
	Children     []FlowSequence `json:"children,omitempty"`
	Config       interface{}    `json:"config,omitempty"`
	CreatedAt    *time.Time     `json:"createdAt,omitempty"`
	CustomFields interface{}    `json:"customFields,omitempty"`
	DisplayGroup float64        `json:"displayGroup,omitempty"`
	Flow         *Flow          `json:"flow,omitempty"`
	FlowId       string         `json:"flowId,omitempty"` // required
	Id           string         `json:"id,omitempty"`
	Parent       *FlowSequence  `json:"parent,omitempty"`
	ParentId     string         `json:"parentId,omitempty"`
	Position     float64        `json:"position,omitempty"`
	Rule         *Rule          `json:"rule,omitempty"`
	RuleId       string         `json:"ruleId,omitempty"`
	TrueCase     bool           `json:"trueCase"`
	UpdatedAt    *time.Time     `json:"updatedAt,omitempty"`
}

type ImportExportFile

type ImportExportFile struct {
	AccessToken  string           `json:"accessToken,omitempty"`
	CreatedAt    *time.Time       `json:"createdAt,omitempty"`
	ExpireDate   *time.Time       `json:"expireDate,omitempty"` // required
	Id           string           `json:"id,omitempty"`
	Log          *ImportExportLog `json:"log,omitempty"`
	OriginalName string           `json:"originalName,omitempty"` // required
	Path         string           `json:"path,omitempty"`         // required
	Size         float64          `json:"size,omitempty"`
	UpdatedAt    *time.Time       `json:"updatedAt,omitempty"`
}

type ImportExportLog

type ImportExportLog struct {
	Activity            string               `json:"activity,omitempty"` // required
	Config              interface{}          `json:"config,omitempty"`   // required
	CreatedAt           *time.Time           `json:"createdAt,omitempty"`
	FailedImportLog     *ImportExportLog     `json:"failedImportLog,omitempty"`
	File                *ImportExportFile    `json:"file,omitempty"`
	FileId              string               `json:"fileId,omitempty"`
	Id                  string               `json:"id,omitempty"`
	InvalidRecordsLog   *ImportExportLog     `json:"invalidRecordsLog,omitempty"`
	InvalidRecordsLogId string               `json:"invalidRecordsLogId,omitempty"`
	Profile             *ImportExportProfile `json:"profile,omitempty"`
	ProfileId           string               `json:"profileId,omitempty"`
	ProfileName         string               `json:"profileName,omitempty"`
	Records             float64              `json:"records,omitempty"` // required
	Result              interface{}          `json:"result,omitempty"`
	State               string               `json:"state,omitempty"` // required
	UpdatedAt           *time.Time           `json:"updatedAt,omitempty"`
	User                *User                `json:"user,omitempty"`
	UserId              string               `json:"userId,omitempty"`
	Username            string               `json:"username,omitempty"`
}

type ImportExportProfile

type ImportExportProfile struct {
	Config           interface{}                      `json:"config,omitempty"`
	CreatedAt        *time.Time                       `json:"createdAt,omitempty"`
	Delimiter        string                           `json:"delimiter,omitempty"` // required
	Enclosure        string                           `json:"enclosure,omitempty"` // required
	FileType         string                           `json:"fileType,omitempty"`  // required
	Id               string                           `json:"id,omitempty"`
	ImportExportLogs []ImportExportLog                `json:"importExportLogs,omitempty"`
	Label            string                           `json:"label,omitempty"` // required
	Mapping          interface{}                      `json:"mapping,omitempty"`
	Name             string                           `json:"name,omitempty"`
	SourceEntity     string                           `json:"sourceEntity,omitempty"` // required
	SystemDefault    bool                             `json:"systemDefault"`
	Translated       interface{}                      `json:"translated,omitempty"`
	Translations     []ImportExportProfileTranslation `json:"translations,omitempty"`
	Type             string                           `json:"type,omitempty"`
	UpdateBy         interface{}                      `json:"updateBy,omitempty"`
	UpdatedAt        *time.Time                       `json:"updatedAt,omitempty"`
}

type ImportExportProfileTranslation

type ImportExportProfileTranslation struct {
	CreatedAt             *time.Time           `json:"createdAt,omitempty"`
	ImportExportProfile   *ImportExportProfile `json:"importExportProfile,omitempty"`
	ImportExportProfileId string               `json:"importExportProfileId,omitempty"`
	Label                 string               `json:"label,omitempty"`
	Language              *Language            `json:"language,omitempty"`
	LanguageId            string               `json:"languageId,omitempty"`
	UpdatedAt             *time.Time           `json:"updatedAt,omitempty"`
}

type Integration

type Integration struct {
	AccessKey            string         `json:"accessKey,omitempty"` // required
	AclRoles             []AclRole      `json:"aclRoles,omitempty"`
	Admin                bool           `json:"admin"`
	App                  *App           `json:"app,omitempty"`
	CreatedAt            *time.Time     `json:"createdAt,omitempty"`
	CreatedNotifications []Notification `json:"createdNotifications,omitempty"`
	CustomFields         interface{}    `json:"customFields,omitempty"`
	DeletedAt            *time.Time     `json:"deletedAt,omitempty"`
	Id                   string         `json:"id,omitempty"`
	Label                string         `json:"label,omitempty"` // required
	LastUsageAt          *time.Time     `json:"lastUsageAt,omitempty"`
	SecretAccessKey      interface{}    `json:"secretAccessKey,omitempty"` // required
	UpdatedAt            *time.Time     `json:"updatedAt,omitempty"`
	WriteAccess          bool           `json:"writeAccess"`
}

type IntegrationRole

type IntegrationRole struct {
	AclRoleId     string       `json:"aclRoleId,omitempty"` // required
	Integration   *Integration `json:"integration,omitempty"`
	IntegrationId string       `json:"integrationId,omitempty"` // required
	Role          *AclRole     `json:"role,omitempty"`
}

type LandingPage

type LandingPage struct {
	Active           bool                     `json:"active"`
	CmsPage          *CmsPage                 `json:"cmsPage,omitempty"`
	CmsPageId        string                   `json:"cmsPageId,omitempty"`
	CmsPageVersionId string                   `json:"cmsPageVersionId,omitempty"`
	CreatedAt        *time.Time               `json:"createdAt,omitempty"`
	CustomFields     interface{}              `json:"customFields,omitempty"`
	Id               string                   `json:"id,omitempty"`
	Keywords         string                   `json:"keywords,omitempty"`
	MetaDescription  string                   `json:"metaDescription,omitempty"`
	MetaTitle        string                   `json:"metaTitle,omitempty"`
	Name             string                   `json:"name,omitempty"` // required
	SalesChannels    []SalesChannel           `json:"salesChannels,omitempty"`
	SeoUrls          []SeoUrl                 `json:"seoUrls,omitempty"`
	SlotConfig       interface{}              `json:"slotConfig,omitempty"`
	Tags             []Tag                    `json:"tags,omitempty"`
	Translated       interface{}              `json:"translated,omitempty"`
	Translations     []LandingPageTranslation `json:"translations,omitempty"`
	UpdatedAt        *time.Time               `json:"updatedAt,omitempty"`
	Url              string                   `json:"url,omitempty"` // required
	VersionId        string                   `json:"versionId,omitempty"`
}

type LandingPageSalesChannel

type LandingPageSalesChannel struct {
	LandingPage          *LandingPage  `json:"landingPage,omitempty"`
	LandingPageId        string        `json:"landingPageId,omitempty"` // required
	LandingPageVersionId string        `json:"landingPageVersionId,omitempty"`
	SalesChannel         *SalesChannel `json:"salesChannel,omitempty"`
	SalesChannelId       string        `json:"salesChannelId,omitempty"` // required
}

type LandingPageTag

type LandingPageTag struct {
	LandingPage          *LandingPage `json:"landingPage,omitempty"`
	LandingPageId        string       `json:"landingPageId,omitempty"` // required
	LandingPageVersionId string       `json:"landingPageVersionId,omitempty"`
	Tag                  *Tag         `json:"tag,omitempty"`
	TagId                string       `json:"tagId,omitempty"` // required
}

type LandingPageTranslation

type LandingPageTranslation struct {
	CreatedAt            *time.Time   `json:"createdAt,omitempty"`
	CustomFields         interface{}  `json:"customFields,omitempty"`
	Keywords             string       `json:"keywords,omitempty"`
	LandingPage          *LandingPage `json:"landingPage,omitempty"`
	LandingPageId        string       `json:"landingPageId,omitempty"`
	LandingPageVersionId string       `json:"landingPageVersionId,omitempty"`
	Language             *Language    `json:"language,omitempty"`
	LanguageId           string       `json:"languageId,omitempty"`
	MetaDescription      string       `json:"metaDescription,omitempty"`
	MetaTitle            string       `json:"metaTitle,omitempty"`
	Name                 string       `json:"name,omitempty"`
	SlotConfig           interface{}  `json:"slotConfig,omitempty"`
	UpdatedAt            *time.Time   `json:"updatedAt,omitempty"`
	Url                  string       `json:"url,omitempty"`
}

type Language

type Language struct {
	ActionButtonTranslations        []AppActionButtonTranslation     `json:"actionButtonTranslations,omitempty"`
	AppCmsBlockTranslations         []AppCmsBlockTranslation         `json:"appCmsBlockTranslations,omitempty"`
	AppTranslations                 []AppTranslation                 `json:"appTranslations,omitempty"`
	CategoryTranslations            []CategoryTranslation            `json:"categoryTranslations,omitempty"`
	Children                        []Language                       `json:"children,omitempty"`
	CmsPageTranslations             []CmsPageTranslation             `json:"cmsPageTranslations,omitempty"`
	CmsSlotTranslations             []CmsSlotTranslation             `json:"cmsSlotTranslations,omitempty"`
	CountryStateTranslations        []CountryStateTranslation        `json:"countryStateTranslations,omitempty"`
	CountryTranslations             []CountryTranslation             `json:"countryTranslations,omitempty"`
	CreatedAt                       *time.Time                       `json:"createdAt,omitempty"`
	CurrencyTranslations            []CurrencyTranslation            `json:"currencyTranslations,omitempty"`
	CustomerGroupTranslations       []CustomerGroupTranslation       `json:"customerGroupTranslations,omitempty"`
	Customers                       []Customer                       `json:"customers,omitempty"`
	CustomFields                    interface{}                      `json:"customFields,omitempty"`
	DeliveryTimeTranslations        []DeliveryTimeTranslation        `json:"deliveryTimeTranslations,omitempty"`
	DocumentTypeTranslations        []DocumentTypeTranslation        `json:"documentTypeTranslations,omitempty"`
	Id                              string                           `json:"id,omitempty"`
	ImportExportProfileTranslations []ImportExportProfileTranslation `json:"importExportProfileTranslations,omitempty"`
	LandingPageTranslations         []LandingPageTranslation         `json:"landingPageTranslations,omitempty"`
	Locale                          *Locale                          `json:"locale,omitempty"`
	LocaleId                        string                           `json:"localeId,omitempty"` // required
	LocaleTranslations              []LocaleTranslation              `json:"localeTranslations,omitempty"`
	MailHeaderFooterTranslations    []MailHeaderFooterTranslation    `json:"mailHeaderFooterTranslations,omitempty"`
	MailTemplateTranslations        []MailTemplateTranslation        `json:"mailTemplateTranslations,omitempty"`
	MailTemplateTypeTranslations    []MailTemplateTypeTranslation    `json:"mailTemplateTypeTranslations,omitempty"`
	MediaTranslations               []MediaTranslation               `json:"mediaTranslations,omitempty"`
	Name                            string                           `json:"name,omitempty"` // required
	NewsletterRecipients            []NewsletterRecipient            `json:"newsletterRecipients,omitempty"`
	NumberRangeTranslations         []NumberRangeTranslation         `json:"numberRangeTranslations,omitempty"`
	NumberRangeTypeTranslations     []NumberRangeTypeTranslation     `json:"numberRangeTypeTranslations,omitempty"`
	Orders                          []Order                          `json:"orders,omitempty"`
	Parent                          *Language                        `json:"parent,omitempty"`
	ParentId                        string                           `json:"parentId,omitempty"`
	PaymentMethodTranslations       []PaymentMethodTranslation       `json:"paymentMethodTranslations,omitempty"`
	PluginTranslations              []PluginTranslation              `json:"pluginTranslations,omitempty"`
	ProductCrossSellingTranslations []ProductCrossSellingTranslation `json:"productCrossSellingTranslations,omitempty"`
	ProductFeatureSetTranslations   []ProductFeatureSetTranslation   `json:"productFeatureSetTranslations,omitempty"`
	ProductKeywordDictionaries      []ProductKeywordDictionary       `json:"productKeywordDictionaries,omitempty"`
	ProductManufacturerTranslations []ProductManufacturerTranslation `json:"productManufacturerTranslations,omitempty"`
	ProductReviews                  []ProductReview                  `json:"productReviews,omitempty"`
	ProductSearchConfig             *ProductSearchConfig             `json:"productSearchConfig,omitempty"`
	ProductSearchKeywords           []ProductSearchKeyword           `json:"productSearchKeywords,omitempty"`
	ProductSortingTranslations      []ProductSortingTranslation      `json:"productSortingTranslations,omitempty"`
	ProductStreamTranslations       []ProductStreamTranslation       `json:"productStreamTranslations,omitempty"`
	ProductTranslations             []ProductTranslation             `json:"productTranslations,omitempty"`
	PromotionTranslations           []PromotionTranslation           `json:"promotionTranslations,omitempty"`
	PropertyGroupOptionTranslations []PropertyGroupOptionTranslation `json:"propertyGroupOptionTranslations,omitempty"`
	PropertyGroupTranslations       []PropertyGroupTranslation       `json:"propertyGroupTranslations,omitempty"`
	SalesChannelDefaultAssignments  []SalesChannel                   `json:"salesChannelDefaultAssignments,omitempty"`
	SalesChannelDomains             []SalesChannelDomain             `json:"salesChannelDomains,omitempty"`
	SalesChannels                   []SalesChannel                   `json:"salesChannels,omitempty"`
	SalesChannelTranslations        []SalesChannelTranslation        `json:"salesChannelTranslations,omitempty"`
	SalesChannelTypeTranslations    []SalesChannelTypeTranslation    `json:"salesChannelTypeTranslations,omitempty"`
	SalutationTranslations          []SalutationTranslation          `json:"salutationTranslations,omitempty"`
	SeoUrlTranslations              []SeoUrl                         `json:"seoUrlTranslations,omitempty"`
	ShippingMethodTranslations      []ShippingMethodTranslation      `json:"shippingMethodTranslations,omitempty"`
	StateMachineStateTranslations   []StateMachineStateTranslation   `json:"stateMachineStateTranslations,omitempty"`
	StateMachineTranslations        []StateMachineTranslation        `json:"stateMachineTranslations,omitempty"`
	TaxRuleTypeTranslations         []TaxRuleTypeTranslation         `json:"taxRuleTypeTranslations,omitempty"`
	ThemeTranslations               []ThemeTranslation               `json:"themeTranslations,omitempty"`
	TranslationCode                 *Locale                          `json:"translationCode,omitempty"`
	TranslationCodeId               string                           `json:"translationCodeId,omitempty"`
	UnitTranslations                []UnitTranslation                `json:"unitTranslations,omitempty"`
	UpdatedAt                       *time.Time                       `json:"updatedAt,omitempty"`
}

type ListPrice

type ListPrice struct {
	Price      float64 `json:"price,omitempty"`      // required
	Discount   float64 `json:"discount,omitempty"`   // required
	Percentage float64 `json:"percentage,omitempty"` // required
}

type Locale

type Locale struct {
	Code         string              `json:"code,omitempty"` // required
	CreatedAt    *time.Time          `json:"createdAt,omitempty"`
	CustomFields interface{}         `json:"customFields,omitempty"`
	Id           string              `json:"id,omitempty"`
	Languages    []Language          `json:"languages,omitempty"`
	Name         string              `json:"name,omitempty"`      // required
	Territory    string              `json:"territory,omitempty"` // required
	Translated   interface{}         `json:"translated,omitempty"`
	Translations []LocaleTranslation `json:"translations,omitempty"`
	UpdatedAt    *time.Time          `json:"updatedAt,omitempty"`
	Users        []User              `json:"users,omitempty"`
}

type LocaleTranslation

type LocaleTranslation struct {
	Language     *Language   `json:"language,omitempty"`
	Name         string      `json:"name,omitempty"`
	LocaleId     string      `json:"localeId,omitempty"`
	LanguageId   string      `json:"languageId,omitempty"`
	UpdatedAt    *time.Time  `json:"updatedAt,omitempty"`
	Locale       *Locale     `json:"locale,omitempty"`
	Territory    string      `json:"territory,omitempty"`
	CustomFields interface{} `json:"customFields,omitempty"`
	CreatedAt    *time.Time  `json:"createdAt,omitempty"`
}

type LogEntry

type LogEntry struct {
	Channel   string      `json:"channel,omitempty"`
	Context   interface{} `json:"context,omitempty"`
	CreatedAt *time.Time  `json:"createdAt,omitempty"`
	Extra     interface{} `json:"extra,omitempty"`
	Id        string      `json:"id,omitempty"`
	Level     float64     `json:"level,omitempty"`
	Message   string      `json:"message,omitempty"`
	UpdatedAt *time.Time  `json:"updatedAt,omitempty"`
}

type MailHeaderFooter

type MailHeaderFooter struct {
	CreatedAt     *time.Time                    `json:"createdAt,omitempty"`
	Description   string                        `json:"description,omitempty"`
	FooterHtml    string                        `json:"footerHtml,omitempty"`
	FooterPlain   string                        `json:"footerPlain,omitempty"`
	HeaderHtml    string                        `json:"headerHtml,omitempty"`
	HeaderPlain   string                        `json:"headerPlain,omitempty"`
	Id            string                        `json:"id,omitempty"`
	Name          string                        `json:"name,omitempty"` // required
	SalesChannels []SalesChannel                `json:"salesChannels,omitempty"`
	SystemDefault bool                          `json:"systemDefault"`
	Translated    interface{}                   `json:"translated,omitempty"`
	Translations  []MailHeaderFooterTranslation `json:"translations,omitempty"`
	UpdatedAt     *time.Time                    `json:"updatedAt,omitempty"`
}

type MailHeaderFooterTranslation

type MailHeaderFooterTranslation struct {
	CreatedAt          *time.Time        `json:"createdAt,omitempty"`
	Description        string            `json:"description,omitempty"`
	FooterHtml         string            `json:"footerHtml,omitempty"`
	FooterPlain        string            `json:"footerPlain,omitempty"`
	HeaderHtml         string            `json:"headerHtml,omitempty"`
	HeaderPlain        string            `json:"headerPlain,omitempty"`
	Language           *Language         `json:"language,omitempty"`
	LanguageId         string            `json:"languageId,omitempty"`
	MailHeaderFooter   *MailHeaderFooter `json:"mailHeaderFooter,omitempty"`
	MailHeaderFooterId string            `json:"mailHeaderFooterId,omitempty"`
	Name               string            `json:"name,omitempty"`
	UpdatedAt          *time.Time        `json:"updatedAt,omitempty"`
}

type MailTemplate

type MailTemplate struct {
	ContentHtml        string                    `json:"contentHtml,omitempty"`  // required
	ContentPlain       string                    `json:"contentPlain,omitempty"` // required
	CreatedAt          *time.Time                `json:"createdAt,omitempty"`
	CustomFields       interface{}               `json:"customFields,omitempty"`
	Description        string                    `json:"description,omitempty"`
	Id                 string                    `json:"id,omitempty"`
	MailTemplateType   *MailTemplateType         `json:"mailTemplateType,omitempty"`
	MailTemplateTypeId string                    `json:"mailTemplateTypeId,omitempty"` // required
	Media              []MailTemplateMedia       `json:"media,omitempty"`
	SenderName         string                    `json:"senderName,omitempty"`
	Subject            string                    `json:"subject,omitempty"` // required
	SystemDefault      bool                      `json:"systemDefault"`
	Translated         interface{}               `json:"translated,omitempty"`
	Translations       []MailTemplateTranslation `json:"translations,omitempty"`
	UpdatedAt          *time.Time                `json:"updatedAt,omitempty"`
}

type MailTemplateMedia

type MailTemplateMedia struct {
	Id             string        `json:"id,omitempty"`
	LanguageId     string        `json:"languageId,omitempty"` // required
	MailTemplate   *MailTemplate `json:"mailTemplate,omitempty"`
	MailTemplateId string        `json:"mailTemplateId,omitempty"` // required
	Media          *Media        `json:"media,omitempty"`
	MediaId        string        `json:"mediaId,omitempty"` // required
	Position       float64       `json:"position,omitempty"`
}

type MailTemplateTranslation

type MailTemplateTranslation struct {
	ContentHtml    string        `json:"contentHtml,omitempty"`
	ContentPlain   string        `json:"contentPlain,omitempty"`
	CreatedAt      *time.Time    `json:"createdAt,omitempty"`
	CustomFields   interface{}   `json:"customFields,omitempty"`
	Description    string        `json:"description,omitempty"`
	Language       *Language     `json:"language,omitempty"`
	LanguageId     string        `json:"languageId,omitempty"`
	MailTemplate   *MailTemplate `json:"mailTemplate,omitempty"`
	MailTemplateId string        `json:"mailTemplateId,omitempty"`
	SenderName     string        `json:"senderName,omitempty"`
	Subject        string        `json:"subject,omitempty"`
	UpdatedAt      *time.Time    `json:"updatedAt,omitempty"`
}

type MailTemplateType

type MailTemplateType struct {
	AvailableEntities interface{}                   `json:"availableEntities,omitempty"`
	CreatedAt         *time.Time                    `json:"createdAt,omitempty"`
	CustomFields      interface{}                   `json:"customFields,omitempty"`
	Id                string                        `json:"id,omitempty"`
	MailTemplates     []MailTemplate                `json:"mailTemplates,omitempty"`
	Name              string                        `json:"name,omitempty"`          // required
	TechnicalName     string                        `json:"technicalName,omitempty"` // required
	TemplateData      interface{}                   `json:"templateData,omitempty"`
	Translated        interface{}                   `json:"translated,omitempty"`
	Translations      []MailTemplateTypeTranslation `json:"translations,omitempty"`
	UpdatedAt         *time.Time                    `json:"updatedAt,omitempty"`
}

type MailTemplateTypeTranslation

type MailTemplateTypeTranslation struct {
	CreatedAt          *time.Time        `json:"createdAt,omitempty"`
	CustomFields       interface{}       `json:"customFields,omitempty"`
	Language           *Language         `json:"language,omitempty"`
	LanguageId         string            `json:"languageId,omitempty"`
	MailTemplateType   *MailTemplateType `json:"mailTemplateType,omitempty"`
	MailTemplateTypeId string            `json:"mailTemplateTypeId,omitempty"`
	Name               string            `json:"name,omitempty"`
	UpdatedAt          *time.Time        `json:"updatedAt,omitempty"`
}

type MainCategory

type MainCategory struct {
	CategoryId        string        `json:"categoryId,omitempty"` // required
	CategoryVersionId string        `json:"categoryVersionId,omitempty"`
	SalesChannelId    string        `json:"salesChannelId,omitempty"` // required
	Product           *Product      `json:"product,omitempty"`
	Category          *Category     `json:"category,omitempty"`
	SalesChannel      *SalesChannel `json:"salesChannel,omitempty"`
	CreatedAt         *time.Time    `json:"createdAt,omitempty"`
	ProductVersionId  string        `json:"productVersionId,omitempty"`
	UpdatedAt         *time.Time    `json:"updatedAt,omitempty"`
	ProductId         string        `json:"productId,omitempty"` // required
	Id                string        `json:"id,omitempty"`
}

type Media

type Media struct {
	Alt                         string                       `json:"alt,omitempty"`
	AppPaymentMethods           []AppPaymentMethod           `json:"appPaymentMethods,omitempty"`
	AvatarUser                  *User                        `json:"avatarUser,omitempty"`
	Categories                  []Category                   `json:"categories,omitempty"`
	CmsBlocks                   []CmsBlock                   `json:"cmsBlocks,omitempty"`
	CmsPages                    []CmsPage                    `json:"cmsPages,omitempty"`
	CmsSections                 []CmsSection                 `json:"cmsSections,omitempty"`
	CreatedAt                   *time.Time                   `json:"createdAt,omitempty"`
	CustomFields                interface{}                  `json:"customFields,omitempty"`
	DocumentBaseConfigs         []DocumentBaseConfig         `json:"documentBaseConfigs,omitempty"`
	Documents                   []Document                   `json:"documents,omitempty"`
	FileExtension               string                       `json:"fileExtension,omitempty"`
	FileName                    string                       `json:"fileName,omitempty"`
	FileSize                    float64                      `json:"fileSize,omitempty"`
	HasFile                     bool                         `json:"hasFile"`
	Id                          string                       `json:"id,omitempty"`
	MailTemplateMedia           []MailTemplateMedia          `json:"mailTemplateMedia,omitempty"`
	MediaFolder                 *MediaFolder                 `json:"mediaFolder,omitempty"`
	MediaFolderId               string                       `json:"mediaFolderId,omitempty"`
	MediaType                   interface{}                  `json:"mediaType,omitempty"`
	MediaTypeRaw                interface{}                  `json:"mediaTypeRaw,omitempty"`
	MetaData                    interface{}                  `json:"metaData,omitempty"`
	MimeType                    string                       `json:"mimeType,omitempty"`
	OrderLineItems              []OrderLineItem              `json:"orderLineItems,omitempty"`
	PaymentMethods              []PaymentMethod              `json:"paymentMethods,omitempty"`
	Private                     bool                         `json:"private"`
	ProductConfiguratorSettings []ProductConfiguratorSetting `json:"productConfiguratorSettings,omitempty"`
	ProductManufacturers        []ProductManufacturer        `json:"productManufacturers,omitempty"`
	ProductMedia                []ProductMedia               `json:"productMedia,omitempty"`
	PropertyGroupOptions        []PropertyGroupOption        `json:"propertyGroupOptions,omitempty"`
	ShippingMethods             []ShippingMethod             `json:"shippingMethods,omitempty"`
	Tags                        []Tag                        `json:"tags,omitempty"`
	ThemeMedia                  []Theme                      `json:"themeMedia,omitempty"`
	Themes                      []Theme                      `json:"themes,omitempty"`
	Thumbnails                  []MediaThumbnail             `json:"thumbnails,omitempty"`
	ThumbnailsRo                interface{}                  `json:"thumbnailsRo,omitempty"`
	Title                       string                       `json:"title,omitempty"`
	Translated                  interface{}                  `json:"translated,omitempty"`
	Translations                []MediaTranslation           `json:"translations,omitempty"`
	UpdatedAt                   *time.Time                   `json:"updatedAt,omitempty"`
	UploadedAt                  *time.Time                   `json:"uploadedAt,omitempty"`
	Url                         string                       `json:"url,omitempty"`
	User                        *User                        `json:"user,omitempty"`
	UserId                      string                       `json:"userId,omitempty"`
}

type MediaDefaultFolder

type MediaDefaultFolder struct {
	AssociationFields []string     `json:"associationFields,omitempty"` // required
	CreatedAt         *time.Time   `json:"createdAt,omitempty"`
	CustomFields      interface{}  `json:"customFields,omitempty"`
	Entity            string       `json:"entity,omitempty"` // required
	Folder            *MediaFolder `json:"folder,omitempty"`
	Id                string       `json:"id,omitempty"`
	UpdatedAt         *time.Time   `json:"updatedAt,omitempty"`
}

type MediaFolder

type MediaFolder struct {
	ChildCount             float64                   `json:"childCount,omitempty"`
	Children               []MediaFolder             `json:"children,omitempty"`
	Configuration          *MediaFolderConfiguration `json:"configuration,omitempty"`
	ConfigurationId        string                    `json:"configurationId,omitempty"` // required
	CreatedAt              *time.Time                `json:"createdAt,omitempty"`
	CustomFields           interface{}               `json:"customFields,omitempty"`
	DefaultFolder          *MediaDefaultFolder       `json:"defaultFolder,omitempty"`
	DefaultFolderId        string                    `json:"defaultFolderId,omitempty"`
	Id                     string                    `json:"id,omitempty"`
	Media                  []Media                   `json:"media,omitempty"`
	Name                   string                    `json:"name,omitempty"` // required
	Parent                 *MediaFolder              `json:"parent,omitempty"`
	ParentId               string                    `json:"parentId,omitempty"`
	UpdatedAt              *time.Time                `json:"updatedAt,omitempty"`
	UseParentConfiguration bool                      `json:"useParentConfiguration"`
}

type MediaFolderConfiguration

type MediaFolderConfiguration struct {
	CreatedAt             *time.Time           `json:"createdAt,omitempty"`
	CreateThumbnails      bool                 `json:"createThumbnails"`
	CustomFields          interface{}          `json:"customFields,omitempty"`
	Id                    string               `json:"id,omitempty"`
	KeepAspectRatio       bool                 `json:"keepAspectRatio"`
	MediaFolders          []MediaFolder        `json:"mediaFolders,omitempty"`
	MediaThumbnailSizes   []MediaThumbnailSize `json:"mediaThumbnailSizes,omitempty"`
	MediaThumbnailSizesRo interface{}          `json:"mediaThumbnailSizesRo,omitempty"`
	NoAssociation         bool                 `json:"noAssociation"`
	Private               bool                 `json:"private"`
	ThumbnailQuality      float64              `json:"thumbnailQuality,omitempty"`
	UpdatedAt             *time.Time           `json:"updatedAt,omitempty"`
}

type MediaFolderConfigurationMediaThumbnailSize

type MediaFolderConfigurationMediaThumbnailSize struct {
	MediaFolderConfiguration   *MediaFolderConfiguration `json:"mediaFolderConfiguration,omitempty"`
	MediaFolderConfigurationId string                    `json:"mediaFolderConfigurationId,omitempty"` // required
	MediaThumbnailSize         *MediaThumbnailSize       `json:"mediaThumbnailSize,omitempty"`
	MediaThumbnailSizeId       string                    `json:"mediaThumbnailSizeId,omitempty"` // required
}

type MediaTag

type MediaTag struct {
	Media   *Media `json:"media,omitempty"`
	MediaId string `json:"mediaId,omitempty"` // required
	Tag     *Tag   `json:"tag,omitempty"`
	TagId   string `json:"tagId,omitempty"` // required
}

type MediaThumbnail

type MediaThumbnail struct {
	CreatedAt    *time.Time  `json:"createdAt,omitempty"`
	CustomFields interface{} `json:"customFields,omitempty"`
	Height       float64     `json:"height,omitempty"` // required
	Id           string      `json:"id,omitempty"`
	Media        *Media      `json:"media,omitempty"`
	MediaId      string      `json:"mediaId,omitempty"` // required
	UpdatedAt    *time.Time  `json:"updatedAt,omitempty"`
	Url          string      `json:"url,omitempty"`
	Width        float64     `json:"width,omitempty"` // required
}

type MediaThumbnailSize

type MediaThumbnailSize struct {
	CreatedAt                 *time.Time                 `json:"createdAt,omitempty"`
	CustomFields              interface{}                `json:"customFields,omitempty"`
	Height                    float64                    `json:"height,omitempty"` // required
	Id                        string                     `json:"id,omitempty"`
	MediaFolderConfigurations []MediaFolderConfiguration `json:"mediaFolderConfigurations,omitempty"`
	UpdatedAt                 *time.Time                 `json:"updatedAt,omitempty"`
	Width                     float64                    `json:"width,omitempty"` // required
}

type MediaTranslation

type MediaTranslation struct {
	Alt          string      `json:"alt,omitempty"`
	CreatedAt    *time.Time  `json:"createdAt,omitempty"`
	CustomFields interface{} `json:"customFields,omitempty"`
	Language     *Language   `json:"language,omitempty"`
	LanguageId   string      `json:"languageId,omitempty"`
	Media        *Media      `json:"media,omitempty"`
	MediaId      string      `json:"mediaId,omitempty"`
	Title        string      `json:"title,omitempty"`
	UpdatedAt    *time.Time  `json:"updatedAt,omitempty"`
}

type MediaURLUpload

type MediaURLUpload struct {
	Url string `json:"url"`
}

type MessageQueueStats

type MessageQueueStats struct {
	CreatedAt *time.Time `json:"createdAt,omitempty"`
	Id        string     `json:"id,omitempty"`
	Name      string     `json:"name,omitempty"`
	Size      float64    `json:"size,omitempty"`
	UpdatedAt *time.Time `json:"updatedAt,omitempty"`
}

type NewsletterRecipient

type NewsletterRecipient struct {
	City           string        `json:"city,omitempty"`
	ConfirmedAt    *time.Time    `json:"confirmedAt,omitempty"`
	CreatedAt      *time.Time    `json:"createdAt,omitempty"`
	CustomFields   interface{}   `json:"customFields,omitempty"`
	Email          string        `json:"email,omitempty"` // required
	FirstName      string        `json:"firstName,omitempty"`
	Hash           string        `json:"hash,omitempty"` // required
	Id             string        `json:"id,omitempty"`
	Language       *Language     `json:"language,omitempty"`
	LanguageId     string        `json:"languageId,omitempty"` // required
	LastName       string        `json:"lastName,omitempty"`
	SalesChannel   *SalesChannel `json:"salesChannel,omitempty"`
	SalesChannelId string        `json:"salesChannelId,omitempty"` // required
	Salutation     *Salutation   `json:"salutation,omitempty"`
	SalutationId   string        `json:"salutationId,omitempty"`
	Status         string        `json:"status,omitempty"` // required
	Street         string        `json:"street,omitempty"`
	Tags           []Tag         `json:"tags,omitempty"`
	Title          string        `json:"title,omitempty"`
	UpdatedAt      *time.Time    `json:"updatedAt,omitempty"`
	ZipCode        string        `json:"zipCode,omitempty"`
}

type NewsletterRecipientTag

type NewsletterRecipientTag struct {
	NewsletterRecipient   *NewsletterRecipient `json:"newsletterRecipient,omitempty"`
	NewsletterRecipientId string               `json:"newsletterRecipientId,omitempty"` // required
	Tag                   *Tag                 `json:"tag,omitempty"`
	TagId                 string               `json:"tagId,omitempty"` // required
}

type Notification

type Notification struct {
	AdminOnly              bool         `json:"adminOnly"`
	CreatedAt              *time.Time   `json:"createdAt,omitempty"`
	CreatedByIntegration   *Integration `json:"createdByIntegration,omitempty"`
	CreatedByIntegrationId string       `json:"createdByIntegrationId,omitempty"`
	CreatedByUser          *User        `json:"createdByUser,omitempty"`
	CreatedByUserId        string       `json:"createdByUserId,omitempty"`
	Id                     string       `json:"id,omitempty"`
	Message                string       `json:"message,omitempty"` // required
	RequiredPrivileges     interface{}  `json:"requiredPrivileges,omitempty"`
	Status                 string       `json:"status,omitempty"` // required
	UpdatedAt              *time.Time   `json:"updatedAt,omitempty"`
}

type NumberRange

type NumberRange struct {
	CreatedAt                *time.Time                `json:"createdAt,omitempty"`
	CustomFields             interface{}               `json:"customFields,omitempty"`
	Description              string                    `json:"description,omitempty"`
	Global                   bool                      `json:"global"`
	Id                       string                    `json:"id,omitempty"`
	Name                     string                    `json:"name,omitempty"`
	NumberRangeSalesChannels []NumberRangeSalesChannel `json:"numberRangeSalesChannels,omitempty"`
	Pattern                  string                    `json:"pattern,omitempty"` // required
	Start                    float64                   `json:"start,omitempty"`   // required
	State                    *NumberRangeState         `json:"state,omitempty"`
	Translated               interface{}               `json:"translated,omitempty"`
	Translations             []NumberRangeTranslation  `json:"translations,omitempty"`
	Type                     *NumberRangeType          `json:"type,omitempty"` // required
	TypeId                   string                    `json:"typeId,omitempty"`
	UpdatedAt                *time.Time                `json:"updatedAt,omitempty"`
}

type NumberRangeSalesChannel

type NumberRangeSalesChannel struct {
	CreatedAt         *time.Time       `json:"createdAt,omitempty"`
	Id                string           `json:"id,omitempty"`
	NumberRange       *NumberRange     `json:"numberRange,omitempty"`
	NumberRangeId     string           `json:"numberRangeId,omitempty"` // required
	NumberRangeType   *NumberRangeType `json:"numberRangeType,omitempty"`
	NumberRangeTypeId string           `json:"numberRangeTypeId,omitempty"`
	SalesChannel      *SalesChannel    `json:"salesChannel,omitempty"`
	SalesChannelId    string           `json:"salesChannelId,omitempty"` // required
	UpdatedAt         *time.Time       `json:"updatedAt,omitempty"`
}

type NumberRangeState

type NumberRangeState struct {
	CreatedAt     *time.Time   `json:"createdAt,omitempty"`
	Id            string       `json:"id,omitempty"`
	LastValue     float64      `json:"lastValue,omitempty"` // required
	NumberRange   *NumberRange `json:"numberRange,omitempty"`
	NumberRangeId string       `json:"numberRangeId,omitempty"` // required
	UpdatedAt     *time.Time   `json:"updatedAt,omitempty"`
}

type NumberRangeTranslation

type NumberRangeTranslation struct {
	CreatedAt     *time.Time   `json:"createdAt,omitempty"`
	CustomFields  interface{}  `json:"customFields,omitempty"`
	Description   string       `json:"description,omitempty"`
	Language      *Language    `json:"language,omitempty"`
	LanguageId    string       `json:"languageId,omitempty"`
	Name          string       `json:"name,omitempty"`
	NumberRange   *NumberRange `json:"numberRange,omitempty"`
	NumberRangeId string       `json:"numberRangeId,omitempty"`
	UpdatedAt     *time.Time   `json:"updatedAt,omitempty"`
}

type NumberRangeType

type NumberRangeType struct {
	CreatedAt                *time.Time                   `json:"createdAt,omitempty"`
	CustomFields             interface{}                  `json:"customFields,omitempty"`
	Global                   bool                         `json:"global"` // required
	Id                       string                       `json:"id,omitempty"`
	NumberRanges             []NumberRange                `json:"numberRanges,omitempty"`
	NumberRangeSalesChannels []NumberRangeSalesChannel    `json:"numberRangeSalesChannels,omitempty"`
	TechnicalName            string                       `json:"technicalName,omitempty"`
	Translated               interface{}                  `json:"translated,omitempty"`
	Translations             []NumberRangeTypeTranslation `json:"translations,omitempty"`
	TypeName                 string                       `json:"typeName,omitempty"` // required
	UpdatedAt                *time.Time                   `json:"updatedAt,omitempty"`
}

type NumberRangeTypeTranslation

type NumberRangeTypeTranslation struct {
	CreatedAt         *time.Time       `json:"createdAt,omitempty"`
	CustomFields      interface{}      `json:"customFields,omitempty"`
	Language          *Language        `json:"language,omitempty"`
	LanguageId        string           `json:"languageId,omitempty"`
	NumberRangeType   *NumberRangeType `json:"numberRangeType,omitempty"`
	NumberRangeTypeId string           `json:"numberRangeTypeId,omitempty"`
	TypeName          string           `json:"typeName,omitempty"`
	UpdatedAt         *time.Time       `json:"updatedAt,omitempty"`
}

type Order

type Order struct {
	Addresses               []OrderAddress     `json:"addresses,omitempty"`
	AffiliateCode           string             `json:"affiliateCode,omitempty"`
	AmountNet               float64            `json:"amountNet,omitempty"`
	AmountTotal             float64            `json:"amountTotal,omitempty"`
	AutoIncrement           float64            `json:"autoIncrement,omitempty"`
	BillingAddress          *OrderAddress      `json:"billingAddress,omitempty"`
	BillingAddressId        string             `json:"billingAddressId,omitempty"` // required
	BillingAddressVersionId string             `json:"billingAddressVersionId,omitempty"`
	CampaignCode            string             `json:"campaignCode,omitempty"`
	CreatedAt               *time.Time         `json:"createdAt,omitempty"`
	CreatedBy               *User              `json:"createdBy,omitempty"`
	CreatedById             string             `json:"createdById,omitempty"`
	Currency                *Currency          `json:"currency,omitempty"`
	CurrencyFactor          float64            `json:"currencyFactor,omitempty"` // required
	CurrencyId              string             `json:"currencyId,omitempty"`     // required
	CustomerComment         string             `json:"customerComment,omitempty"`
	CustomFields            interface{}        `json:"customFields,omitempty"`
	DeepLinkCode            string             `json:"deepLinkCode,omitempty"`
	Deliveries              []OrderDelivery    `json:"deliveries,omitempty"`
	Documents               []Document         `json:"documents,omitempty"`
	Id                      string             `json:"id,omitempty"`
	ItemRounding            interface{}        `json:"itemRounding,omitempty"`
	Language                *Language          `json:"language,omitempty"`
	LanguageId              string             `json:"languageId,omitempty"` // required
	LineItems               []OrderLineItem    `json:"lineItems,omitempty"`
	OrderCustomer           *OrderCustomer     `json:"orderCustomer,omitempty"`
	OrderDate               *time.Time         `json:"orderDate,omitempty"`
	OrderDateTime           *time.Time         `json:"orderDateTime,omitempty"` // required
	OrderNumber             string             `json:"orderNumber,omitempty"`
	PositionPrice           float64            `json:"positionPrice,omitempty"`
	Price                   OrderPrice         `json:"price,omitempty"`
	RuleIds                 interface{}        `json:"ruleIds,omitempty"`
	SalesChannel            *SalesChannel      `json:"salesChannel,omitempty"`
	SalesChannelId          string             `json:"salesChannelId,omitempty"` // required
	ShippingCosts           interface{}        `json:"shippingCosts,omitempty"`
	ShippingTotal           float64            `json:"shippingTotal,omitempty"`
	StateId                 string             `json:"stateId,omitempty"`
	StateMachineState       *StateMachineState `json:"stateMachineState,omitempty"`
	Tags                    []Tag              `json:"tags,omitempty"`
	TaxStatus               string             `json:"taxStatus,omitempty"`
	TotalRounding           interface{}        `json:"totalRounding,omitempty"`
	Transactions            []OrderTransaction `json:"transactions,omitempty"`
	UpdatedAt               *time.Time         `json:"updatedAt,omitempty"`
	UpdatedBy               *User              `json:"updatedBy,omitempty"`
	UpdatedById             string             `json:"updatedById,omitempty"`
	VersionId               string             `json:"versionId,omitempty"`
}

type OrderAddress

type OrderAddress struct {
	AdditionalAddressLine1 string          `json:"additionalAddressLine1,omitempty"`
	AdditionalAddressLine2 string          `json:"additionalAddressLine2,omitempty"`
	City                   string          `json:"city,omitempty"` // required
	Company                string          `json:"company,omitempty"`
	Country                *Country        `json:"country,omitempty"`
	CountryId              string          `json:"countryId,omitempty"` // required
	CountryState           *CountryState   `json:"countryState,omitempty"`
	CountryStateId         string          `json:"countryStateId,omitempty"`
	CreatedAt              *time.Time      `json:"createdAt,omitempty"`
	CustomFields           interface{}     `json:"customFields,omitempty"`
	Department             string          `json:"department,omitempty"`
	FirstName              string          `json:"firstName,omitempty"` // required
	Id                     string          `json:"id,omitempty"`
	LastName               string          `json:"lastName,omitempty"` // required
	Order                  *Order          `json:"order,omitempty"`
	OrderDeliveries        []OrderDelivery `json:"orderDeliveries,omitempty"`
	OrderId                string          `json:"orderId,omitempty"` // required
	OrderVersionId         string          `json:"orderVersionId,omitempty"`
	PhoneNumber            string          `json:"phoneNumber,omitempty"`
	Salutation             *Salutation     `json:"salutation,omitempty"`
	SalutationId           string          `json:"salutationId,omitempty"` // required
	Street                 string          `json:"street,omitempty"`       // required
	Title                  string          `json:"title,omitempty"`
	UpdatedAt              *time.Time      `json:"updatedAt,omitempty"`
	VatId                  string          `json:"vatId,omitempty"`
	VersionId              string          `json:"versionId,omitempty"`
	Zipcode                string          `json:"zipcode,omitempty"`
}

type OrderCustomer

type OrderCustomer struct {
	Company        string      `json:"company,omitempty"`
	CreatedAt      *time.Time  `json:"createdAt,omitempty"`
	Customer       *Customer   `json:"customer,omitempty"`
	CustomerId     string      `json:"customerId,omitempty"`
	CustomerNumber string      `json:"customerNumber,omitempty"`
	CustomFields   interface{} `json:"customFields,omitempty"`
	Email          string      `json:"email,omitempty"`     // required
	FirstName      string      `json:"firstName,omitempty"` // required
	Id             string      `json:"id,omitempty"`
	LastName       string      `json:"lastName,omitempty"` // required
	Order          *Order      `json:"order,omitempty"`
	OrderId        string      `json:"orderId,omitempty"` // required
	OrderVersionId string      `json:"orderVersionId,omitempty"`
	RemoteAddress  interface{} `json:"remoteAddress,omitempty"`
	Salutation     *Salutation `json:"salutation,omitempty"`
	SalutationId   string      `json:"salutationId,omitempty"` // required
	Title          string      `json:"title,omitempty"`
	UpdatedAt      *time.Time  `json:"updatedAt,omitempty"`
	VatIds         interface{} `json:"vatIds,omitempty"`
	VersionId      string      `json:"versionId,omitempty"`
}

type OrderDelivery

type OrderDelivery struct {
	CreatedAt                     *time.Time              `json:"createdAt,omitempty"`
	CustomFields                  interface{}             `json:"customFields,omitempty"`
	Id                            string                  `json:"id,omitempty"`
	Order                         *Order                  `json:"order,omitempty"`
	OrderId                       string                  `json:"orderId,omitempty"` // required
	OrderVersionId                string                  `json:"orderVersionId,omitempty"`
	Positions                     []OrderDeliveryPosition `json:"positions,omitempty"`
	ShippingCosts                 ShippingCosts           `json:"shippingCosts,omitempty"`
	ShippingDateEarliest          *time.Time              `json:"shippingDateEarliest,omitempty"` // required
	ShippingDateLatest            *time.Time              `json:"shippingDateLatest,omitempty"`   // required
	ShippingMethod                *ShippingMethod         `json:"shippingMethod,omitempty"`
	ShippingMethodId              string                  `json:"shippingMethodId,omitempty"` // required
	ShippingOrderAddress          *OrderAddress           `json:"shippingOrderAddress,omitempty"`
	ShippingOrderAddressId        string                  `json:"shippingOrderAddressId,omitempty"` // required
	ShippingOrderAddressVersionId string                  `json:"shippingOrderAddressVersionId,omitempty"`
	StateId                       string                  `json:"stateId,omitempty"` // required
	StateMachineState             *StateMachineState      `json:"stateMachineState,omitempty"`
	TrackingCodes                 []string                `json:"trackingCodes,omitempty"` // required
	UpdatedAt                     *time.Time              `json:"updatedAt,omitempty"`
	VersionId                     string                  `json:"versionId,omitempty"`
}

type OrderDeliveryPosition

type OrderDeliveryPosition struct {
	CreatedAt              *time.Time     `json:"createdAt,omitempty"`
	CustomFields           interface{}    `json:"customFields,omitempty"`
	Id                     string         `json:"id,omitempty"`
	OrderDelivery          *OrderDelivery `json:"orderDelivery,omitempty"`
	OrderDeliveryId        string         `json:"orderDeliveryId,omitempty"` // required
	OrderDeliveryVersionId string         `json:"orderDeliveryVersionId,omitempty"`
	OrderLineItem          *OrderLineItem `json:"orderLineItem,omitempty"`
	OrderLineItemId        string         `json:"orderLineItemId,omitempty"` // required
	OrderLineItemVersionId string         `json:"orderLineItemVersionId,omitempty"`
	Price                  OrderPrice     `json:"price,omitempty"`
	Quantity               float64        `json:"quantity,omitempty"`
	TotalPrice             float64        `json:"totalPrice,omitempty"`
	UnitPrice              float64        `json:"unitPrice,omitempty"`
	UpdatedAt              *time.Time     `json:"updatedAt,omitempty"`
	VersionId              string         `json:"versionId,omitempty"`
}

type OrderLineItem

type OrderLineItem struct {
	Children               []OrderLineItem         `json:"children,omitempty"`
	Cover                  *Media                  `json:"cover,omitempty"`
	CoverId                string                  `json:"coverId,omitempty"`
	CreatedAt              *time.Time              `json:"createdAt,omitempty"`
	CustomFields           interface{}             `json:"customFields,omitempty"`
	Description            string                  `json:"description,omitempty"`
	Good                   bool                    `json:"good"`
	Id                     string                  `json:"id,omitempty"`
	Identifier             string                  `json:"identifier,omitempty"` // required
	Label                  string                  `json:"label,omitempty"`      // required
	Order                  *Order                  `json:"order,omitempty"`
	OrderDeliveryPositions []OrderDeliveryPosition `json:"orderDeliveryPositions,omitempty"`
	OrderId                string                  `json:"orderId,omitempty"` // required
	OrderVersionId         string                  `json:"orderVersionId,omitempty"`
	Parent                 *OrderLineItem          `json:"parent,omitempty"`
	ParentId               string                  `json:"parentId,omitempty"`
	ParentVersionId        string                  `json:"parentVersionId,omitempty"`
	Payload                interface{}             `json:"payload,omitempty"`
	Position               int64                   `json:"position,omitempty"` // required
	Price                  OrderPrice              `json:"price,omitempty"`    // required
	PriceDefinition        interface{}             `json:"priceDefinition,omitempty"`
	Product                *Product                `json:"product,omitempty"`
	ProductId              string                  `json:"productId,omitempty"`
	ProductVersionId       string                  `json:"productVersionId,omitempty"`
	Quantity               float64                 `json:"quantity,omitempty"` // required
	ReferencedId           string                  `json:"referencedId,omitempty"`
	Removable              bool                    `json:"removable"`
	Stackable              bool                    `json:"stackable"`
	TotalPrice             float64                 `json:"totalPrice,omitempty"`
	Type                   string                  `json:"type,omitempty"`
	UnitPrice              float64                 `json:"unitPrice,omitempty"`
	UpdatedAt              *time.Time              `json:"updatedAt,omitempty"`
	VersionId              string                  `json:"versionId,omitempty"`
}

type OrderPrice

type OrderPrice struct {
	NetPrice        float32         `json:"netPrice,omitempty"`   // required
	TotalPrice      float32         `json:"totalPrice,omitempty"` // required
	UnitPrice       float32         `json:"unitPrice,omitempty"`  // required
	Quantity        float32         `json:"quantity,omitempty"`   // required
	CalculatedTaxes interface{}     `json:"calculatedTaxes,omitempty"`
	TaxRules        interface{}     `json:"taxRules,omitempty"`
	ReferencePrice  interface{}     `json:"referencePrice,omitempty"`
	PositionPrice   float32         `json:"positionPrice,omitempty"` // required
	RawTotal        float32         `json:"rawTotal,omitempty"`      // required
	TaxStatus       string          `json:"taxStatus,omitempty"`     // required
	ListPrice       ListPrice       `json:"listPrice,omitempty"`
	RegulationPrice RegulationPrice `json:"regulationPrice,omitempty"`
}

type OrderTag

type OrderTag struct {
	Order          *Order `json:"order,omitempty"`
	OrderId        string `json:"orderId,omitempty"` // required
	OrderVersionId string `json:"orderVersionId,omitempty"`
	Tag            *Tag   `json:"tag,omitempty"`
	TagId          string `json:"tagId,omitempty"` // required
}

type OrderTransaction

type OrderTransaction struct {
	Amount            Amount             `json:"amount,omitempty"`
	Captures          Capture            `json:"captures,omitempty"`
	CreatedAt         *time.Time         `json:"createdAt,omitempty"`
	CustomFields      interface{}        `json:"customFields,omitempty"`
	Id                string             `json:"id,omitempty"`
	Order             *Order             `json:"order,omitempty"`
	OrderId           string             `json:"orderId,omitempty"` // required
	OrderVersionId    string             `json:"orderVersionId,omitempty"`
	PaymentMethod     *PaymentMethod     `json:"paymentMethod,omitempty"`
	PaymentMethodId   string             `json:"paymentMethodId,omitempty"` // required
	StateId           string             `json:"stateId,omitempty"`
	StateMachineState *StateMachineState `json:"stateMachineState,omitempty"`
	UpdatedAt         *time.Time         `json:"updatedAt,omitempty"`
	VersionId         string             `json:"versionId,omitempty"`
}

type PaymentMethod

type PaymentMethod struct {
	Active                         bool                       `json:"active"`
	AfterOrderEnabled              bool                       `json:"afterOrderEnabled"`
	AppPaymentMethod               *AppPaymentMethod          `json:"appPaymentMethod,omitempty"`
	Asynchronous                   bool                       `json:"asynchronous"`
	AvailabilityRule               *Rule                      `json:"availabilityRule,omitempty"`
	AvailabilityRuleId             string                     `json:"availabilityRuleId,omitempty"`
	CreatedAt                      *time.Time                 `json:"createdAt,omitempty"`
	Customers                      []Customer                 `json:"customers,omitempty"`
	CustomFields                   interface{}                `json:"customFields,omitempty"`
	Description                    string                     `json:"description,omitempty"`
	DistinguishableName            string                     `json:"distinguishableName,omitempty"`
	FormattedHandlerIdentifier     string                     `json:"formattedHandlerIdentifier,omitempty"`
	HandlerIdentifier              string                     `json:"handlerIdentifier,omitempty"`
	Id                             string                     `json:"id,omitempty"`
	Media                          *Media                     `json:"media,omitempty"`
	MediaId                        string                     `json:"mediaId,omitempty"`
	Name                           string                     `json:"name,omitempty"` // required
	OrderTransactions              []OrderTransaction         `json:"orderTransactions,omitempty"`
	Plugin                         *Plugin                    `json:"plugin,omitempty"`
	PluginId                       string                     `json:"pluginId,omitempty"`
	Position                       float64                    `json:"position,omitempty"`
	Prepared                       bool                       `json:"prepared"`
	SalesChannelDefaultAssignments []SalesChannel             `json:"salesChannelDefaultAssignments,omitempty"`
	SalesChannels                  []SalesChannel             `json:"salesChannels,omitempty"`
	Synchronous                    bool                       `json:"synchronous"`
	Translated                     interface{}                `json:"translated,omitempty"`
	Translations                   []PaymentMethodTranslation `json:"translations,omitempty"`
	UpdatedAt                      *time.Time                 `json:"updatedAt,omitempty"`
}

type PaymentMethodTranslation

type PaymentMethodTranslation struct {
	CreatedAt           *time.Time     `json:"createdAt,omitempty"`
	CustomFields        interface{}    `json:"customFields,omitempty"`
	Description         string         `json:"description,omitempty"`
	DistinguishableName string         `json:"distinguishableName,omitempty"`
	Language            *Language      `json:"language,omitempty"`
	LanguageId          string         `json:"languageId,omitempty"`
	Name                string         `json:"name,omitempty"`
	PaymentMethod       *PaymentMethod `json:"paymentMethod,omitempty"`
	PaymentMethodId     string         `json:"paymentMethodId,omitempty"`
	UpdatedAt           *time.Time     `json:"updatedAt,omitempty"`
}

type Plugin

type Plugin struct {
	Active            bool                `json:"active"`
	Author            string              `json:"author,omitempty"`
	Autoload          interface{}         `json:"autoload,omitempty"`  // required
	BaseClass         string              `json:"baseClass,omitempty"` // required
	Changelog         interface{}         `json:"changelog,omitempty"`
	ComposerName      string              `json:"composerName,omitempty"`
	Copyright         string              `json:"copyright,omitempty"`
	CreatedAt         *time.Time          `json:"createdAt,omitempty"`
	CustomFields      interface{}         `json:"customFields,omitempty"`
	Description       string              `json:"description,omitempty"`
	Icon              string              `json:"icon,omitempty"`
	IconRaw           interface{}         `json:"iconRaw,omitempty"`
	Id                string              `json:"id,omitempty"`
	InstalledAt       *time.Time          `json:"installedAt,omitempty"`
	Label             string              `json:"label,omitempty"` // required
	License           string              `json:"license,omitempty"`
	ManagedByComposer bool                `json:"managedByComposer"`
	ManufacturerLink  string              `json:"manufacturerLink,omitempty"`
	Name              string              `json:"name,omitempty"` // required
	Path              string              `json:"path,omitempty"`
	PaymentMethods    []PaymentMethod     `json:"paymentMethods,omitempty"`
	SupportLink       string              `json:"supportLink,omitempty"`
	Translated        interface{}         `json:"translated,omitempty"`
	Translations      []PluginTranslation `json:"translations,omitempty"`
	UpdatedAt         *time.Time          `json:"updatedAt,omitempty"`
	UpgradedAt        *time.Time          `json:"upgradedAt,omitempty"`
	UpgradeVersion    string              `json:"upgradeVersion,omitempty"`
	Version           string              `json:"version,omitempty"` // required
}

type PluginTranslation

type PluginTranslation struct {
	Changelog        interface{} `json:"changelog,omitempty"`
	CreatedAt        *time.Time  `json:"createdAt,omitempty"`
	CustomFields     interface{} `json:"customFields,omitempty"`
	Description      string      `json:"description,omitempty"`
	Label            string      `json:"label,omitempty"`
	Language         *Language   `json:"language,omitempty"`
	LanguageId       string      `json:"languageId,omitempty"`
	ManufacturerLink string      `json:"manufacturerLink,omitempty"`
	Plugin           *Plugin     `json:"plugin,omitempty"`
	PluginId         string      `json:"pluginId,omitempty"`
	SupportLink      string      `json:"supportLink,omitempty"`
	UpdatedAt        *time.Time  `json:"updatedAt,omitempty"`
}

type Position

type Position struct {
	Id                            string        `json:"id,omitempty"`
	RefundId                      string        `json:"refundId,omitempty"`        // required
	OrderLineItemId               string        `json:"orderLineItemId,omitempty"` // required
	ExternalReference             string        `json:"externalReference,omitempty"`
	Reason                        string        `json:"reason,omitempty"`
	Quantity                      float64       `json:"quantity,omitempty"` // required
	Amount                        Amount        `json:"amount,omitempty"`   // required
	RefundPrice                   float64       `json:"refundPrice,omitempty"`
	CustomFields                  interface{}   `json:"customFields,omitempty"`
	CreatedAt                     *time.Time    `json:"createdAt,omitempty"`
	UpdatedAt                     *time.Time    `json:"updatedAt,omitempty"`
	OrderLineItem                 OrderLineItem `json:"orderLineItem,omitempty"`
	OrderTransactionCaptureRefund interface{}   `json:"orderTransactionCaptureRefund,omitempty"`
}

type Price

type Price struct {
	RuleID     string  `json:"ruleId,omitempty"`
	CurrencyID string  `json:"currencyId,omitempty"`
	Gross      float32 `json:"gross"` // required
	Net        float32 `json:"net"`   // required
	Linked     bool    `json:"linked"`
}

type Product

type Product struct {
	Active                        bool                                  `json:"active"`
	AutoIncrement                 float64                               `json:"autoIncrement,omitempty"`
	Available                     bool                                  `json:"available,omitempty"` // not changeable
	AvailableStock                float64                               `json:"availableStock,omitempty"`
	CanonicalProduct              *Product                              `json:"canonicalProduct,omitempty"`
	CanonicalProductId            string                                `json:"canonicalProductId,omitempty"`
	Categories                    []Category                            `json:"categories,omitempty"`
	CategoriesRo                  []Category                            `json:"categoriesRo,omitempty"`
	CategoryIds                   []string                              `json:"categoryIds,omitempty"`
	CategoryTree                  interface{}                           `json:"categoryTree,omitempty"`
	CheapestPrice                 interface{}                           `json:"cheapestPrice,omitempty"`
	ChildCount                    float64                               `json:"childCount,omitempty"`
	Children                      []Product                             `json:"children,omitempty"`
	CmsPage                       *CmsPage                              `json:"cmsPage,omitempty"`
	CmsPageId                     string                                `json:"cmsPageId,omitempty"`
	CmsPageVersionId              string                                `json:"cmsPageVersionId,omitempty"`
	ConfiguratorGroupConfig       interface{}                           `json:"configuratorGroupConfig,omitempty"` // deprecated
	ConfiguratorSettings          []ProductConfiguratorSetting          `json:"configuratorSettings,omitempty"`
	Cover                         *ProductMedia                         `json:"cover,omitempty"`
	CoverId                       *string                               `json:"coverId"`
	CreatedAt                     *time.Time                            `json:"createdAt,omitempty"`
	CrossSellingAssignedProducts  []ProductCrossSellingAssignedProducts `json:"crossSellingAssignedProducts,omitempty"`
	CrossSellings                 []ProductCrossSelling                 `json:"crossSellings,omitempty"`
	CustomFields                  interface{}                           `json:"customFields,omitempty"`
	CustomFieldSets               []CustomFieldSet                      `json:"customFieldSets,omitempty"`
	CustomFieldSetSelectionActive bool                                  `json:"customFieldSetSelectionActive"`
	CustomSearchKeywords          interface{}                           `json:"customSearchKeywords,omitempty"`
	DeliveryTime                  *DeliveryTime                         `json:"deliveryTime,omitempty"`
	DeliveryTimeId                string                                `json:"deliveryTimeId,omitempty"`
	Description                   string                                `json:"description"`
	DisplayGroup                  string                                `json:"displayGroup,omitempty"`
	Ean                           string                                `json:"ean,omitempty"`
	FeatureSet                    *ProductFeatureSet                    `json:"featureSet,omitempty"`
	FeatureSetId                  string                                `json:"featureSetId,omitempty"`
	Height                        float64                               `json:"height"`
	Id                            string                                `json:"id,omitempty"`
	IsCloseout                    bool                                  `json:"isCloseout"`
	Keywords                      string                                `json:"keywords"`
	Length                        float64                               `json:"length,omitempty"`
	MainCategories                []MainCategory                        `json:"mainCategories,omitempty"`
	MainVariantId                 string                                `json:"mainVariantId,omitempty"` // deprecated
	Manufacturer                  *ProductManufacturer                  `json:"manufacturer,omitempty"`
	ManufacturerId                *string                               `json:"manufacturerId"`
	ManufacturerNumber            string                                `json:"manufacturerNumber,omitempty"`
	MarkAsTopseller               bool                                  `json:"markAsTopseller"`
	MaxPurchase                   float64                               `json:"maxPurchase,omitempty"`
	Media                         []ProductMedia                        `json:"media,omitempty"`
	MetaDescription               string                                `json:"metaDescription"`
	MetaTitle                     string                                `json:"metaTitle"`
	MinPurchase                   float64                               `json:"minPurchase,omitempty"`
	Name                          string                                `json:"name"` // required
	OptionIds                     interface{}                           `json:"optionIds,omitempty"`
	Options                       []PropertyGroupOption                 `json:"options,omitempty"`
	OrderLineItems                []OrderLineItem                       `json:"orderLineItems,omitempty"`
	PackUnit                      string                                `json:"packUnit,omitempty"`
	PackUnitPlural                string                                `json:"packUnitPlural,omitempty"`
	Parent                        *Product                              `json:"parent,omitempty"`
	ParentId                      string                                `json:"parentId,omitempty"`
	ParentVersionId               string                                `json:"parentVersionId,omitempty"`
	Price                         interface{}                           `json:"price"` // required
	Prices                        []ProductPrice                        `json:"prices,omitempty"`
	ProductManufacturerVersionId  string                                `json:"productManufacturerVersionId,omitempty"`
	ProductMediaVersionId         string                                `json:"productMediaVersionId,omitempty"`
	ProductNumber                 string                                `json:"productNumber"` // required
	ProductReviews                []ProductReview                       `json:"productReviews,omitempty"`
	Properties                    []PropertyGroupOption                 `json:"properties,omitempty"`
	PropertyIds                   []string                              `json:"propertyIds,omitempty"`
	PurchasePrices                interface{}                           `json:"purchasePrices,omitempty"`
	PurchaseSteps                 float64                               `json:"purchaseSteps,omitempty"`
	PurchaseUnit                  float64                               `json:"purchaseUnit,omitempty"`
	RatingAverage                 float64                               `json:"ratingAverage,omitempty"`
	ReferenceUnit                 float64                               `json:"referenceUnit,omitempty"`
	ReleaseDate                   *time.Time                            `json:"releaseDate,omitempty"`
	RestockTime                   float64                               `json:"restockTime,omitempty"`
	Sales                         float64                               `json:"sales,omitempty"`
	SearchKeywords                []ProductSearchKeyword                `json:"searchKeywords,omitempty"`
	SeoUrls                       []SeoUrl                              `json:"seoUrls,omitempty"`
	ShippingFree                  bool                                  `json:"shippingFree"`
	SlotConfig                    interface{}                           `json:"slotConfig,omitempty"`
	Stock                         float64                               `json:"stock"` // required
	StreamIds                     interface{}                           `json:"streamIds,omitempty"`
	Streams                       []ProductStream                       `json:"streams,omitempty"`
	TagIds                        interface{}                           `json:"tagIds,omitempty"`
	Tags                          []Tag                                 `json:"tags,omitempty"`
	Tax                           *Tax                                  `json:"tax,omitempty"`
	TaxId                         string                                `json:"taxId"` // required
	Translated                    interface{}                           `json:"translated,omitempty"`
	Translations                  []ProductTranslation                  `json:"translations,omitempty"`
	Unit                          *Unit                                 `json:"unit,omitempty"`
	UnitId                        string                                `json:"unitId,omitempty"`
	UpdatedAt                     *time.Time                            `json:"updatedAt,omitempty"`
	VariantRestrictions           interface{}                           `json:"variantRestrictions,omitempty"`
	Variation                     interface{}                           `json:"variation,omitempty"`
	VersionId                     string                                `json:"versionId,omitempty"`
	Visibilities                  []ProductVisibility                   `json:"visibilities,omitempty"`
	Weight                        float64                               `json:"weight,omitempty"`
	Width                         float64                               `json:"width,omitempty"`
	Wishlists                     []CustomerWishlistProduct             `json:"wishlists,omitempty"`
}

type ProductCategory

type ProductCategory struct {
	Category          *Category `json:"category,omitempty"`
	CategoryId        string    `json:"categoryId,omitempty"` // required
	CategoryVersionId string    `json:"categoryVersionId,omitempty"`
	Product           *Product  `json:"product,omitempty"`
	ProductId         string    `json:"productId,omitempty"` // required
	ProductVersionId  string    `json:"productVersionId,omitempty"`
}

type ProductCategoryTree

type ProductCategoryTree struct {
	Category          *Category `json:"category,omitempty"`
	CategoryId        string    `json:"categoryId,omitempty"`
	CategoryVersionId string    `json:"categoryVersionId,omitempty"`
	Product           *Product  `json:"product,omitempty"`
	ProductId         string    `json:"productId,omitempty"`
	ProductVersionId  string    `json:"productVersionId,omitempty"`
}

type ProductConfiguratorSetting

type ProductConfiguratorSetting struct {
	CreatedAt        *time.Time           `json:"createdAt,omitempty"`
	CustomFields     interface{}          `json:"customFields,omitempty"`
	Id               string               `json:"id,omitempty"`
	Media            *Media               `json:"media,omitempty"`
	MediaId          string               `json:"mediaId,omitempty"`
	Option           *PropertyGroupOption `json:"option,omitempty"`
	OptionId         string               `json:"optionId,omitempty"` // required
	Position         float64              `json:"position,omitempty"`
	Price            interface{}          `json:"price,omitempty"`
	Product          *Product             `json:"product,omitempty"`
	ProductId        string               `json:"productId,omitempty"` // required
	ProductVersionId string               `json:"productVersionId,omitempty"`
	UpdatedAt        *time.Time           `json:"updatedAt,omitempty"`
	VersionId        string               `json:"versionId,omitempty"`
}

type ProductCrossSelling

type ProductCrossSelling struct {
	Active           bool                                  `json:"active"`
	AssignedProducts []ProductCrossSellingAssignedProducts `json:"assignedProducts,omitempty"`
	CreatedAt        *time.Time                            `json:"createdAt,omitempty"`
	Id               string                                `json:"id,omitempty"`
	Limit            float64                               `json:"limit,omitempty"`
	Name             string                                `json:"name,omitempty"`     // required
	Position         float64                               `json:"position,omitempty"` // required
	Product          *Product                              `json:"product,omitempty"`
	ProductId        string                                `json:"productId,omitempty"` // required
	ProductStream    *ProductStream                        `json:"productStream,omitempty"`
	ProductStreamId  string                                `json:"productStreamId,omitempty"`
	ProductVersionId string                                `json:"productVersionId,omitempty"`
	SortBy           string                                `json:"sortBy,omitempty"`
	SortDirection    string                                `json:"sortDirection,omitempty"`
	Translated       interface{}                           `json:"translated,omitempty"`
	Translations     []ProductCrossSellingTranslation      `json:"translations,omitempty"`
	Type             string                                `json:"type,omitempty"` // required
	UpdatedAt        *time.Time                            `json:"updatedAt,omitempty"`
}

type ProductCrossSellingAssignedProducts

type ProductCrossSellingAssignedProducts struct {
	CreatedAt        *time.Time           `json:"createdAt,omitempty"`
	CrossSelling     *ProductCrossSelling `json:"crossSelling,omitempty"`
	CrossSellingId   string               `json:"crossSellingId,omitempty"` // required
	Id               string               `json:"id,omitempty"`
	Position         float64              `json:"position,omitempty"`
	Product          *Product             `json:"product,omitempty"`
	ProductId        string               `json:"productId,omitempty"` // required
	ProductVersionId string               `json:"productVersionId,omitempty"`
	UpdatedAt        *time.Time           `json:"updatedAt,omitempty"`
}

type ProductCrossSellingTranslation

type ProductCrossSellingTranslation struct {
	CreatedAt             *time.Time           `json:"createdAt,omitempty"`
	Language              *Language            `json:"language,omitempty"`
	LanguageId            string               `json:"languageId,omitempty"`
	Name                  string               `json:"name,omitempty"`
	ProductCrossSelling   *ProductCrossSelling `json:"productCrossSelling,omitempty"`
	ProductCrossSellingId string               `json:"productCrossSellingId,omitempty"`
	UpdatedAt             *time.Time           `json:"updatedAt,omitempty"`
}

type ProductCustomFieldSet

type ProductCustomFieldSet struct {
	CustomFieldSet   *CustomFieldSet `json:"customFieldSet,omitempty"`
	CustomFieldSetId string          `json:"customFieldSetId,omitempty"` // required
	Product          *Product        `json:"product,omitempty"`
	ProductId        string          `json:"productId,omitempty"` // required
	ProductVersionId string          `json:"productVersionId,omitempty"`
}

type ProductExport

type ProductExport struct {
	AccessKey                string              `json:"accessKey,omitempty"` // required
	BodyTemplate             string              `json:"bodyTemplate,omitempty"`
	CreatedAt                *time.Time          `json:"createdAt,omitempty"`
	Currency                 *Currency           `json:"currency,omitempty"`
	CurrencyId               string              `json:"currencyId,omitempty"` // required
	Encoding                 string              `json:"encoding,omitempty"`   // required
	FileFormat               string              `json:"fileFormat,omitempty"` // required
	FileName                 string              `json:"fileName,omitempty"`   // required
	FooterTemplate           string              `json:"footerTemplate,omitempty"`
	GenerateByCronjob        bool                `json:"generateByCronjob"` // required
	GeneratedAt              *time.Time          `json:"generatedAt,omitempty"`
	HeaderTemplate           string              `json:"headerTemplate,omitempty"`
	Id                       string              `json:"id,omitempty"`
	IncludeVariants          bool                `json:"includeVariants"`
	Interval                 float64             `json:"interval,omitempty"` // required
	PausedSchedule           bool                `json:"pausedSchedule"`
	ProductStream            *ProductStream      `json:"productStream,omitempty"`
	ProductStreamId          string              `json:"productStreamId,omitempty"` // required
	SalesChannel             *SalesChannel       `json:"salesChannel,omitempty"`
	SalesChannelDomain       *SalesChannelDomain `json:"salesChannelDomain,omitempty"`
	SalesChannelDomainId     string              `json:"salesChannelDomainId,omitempty"` // required
	SalesChannelId           string              `json:"salesChannelId,omitempty"`       // required
	StorefrontSalesChannel   *SalesChannel       `json:"storefrontSalesChannel,omitempty"`
	StorefrontSalesChannelId string              `json:"storefrontSalesChannelId,omitempty"` // required
	UpdatedAt                *time.Time          `json:"updatedAt,omitempty"`
}

type ProductFeatureSet

type ProductFeatureSet struct {
	CreatedAt    *time.Time                     `json:"createdAt,omitempty"`
	Description  string                         `json:"description,omitempty"`
	Features     interface{}                    `json:"features,omitempty"`
	Id           string                         `json:"id,omitempty"`
	Name         string                         `json:"name,omitempty"` // required
	Products     []Product                      `json:"products,omitempty"`
	Translated   interface{}                    `json:"translated,omitempty"`
	Translations []ProductFeatureSetTranslation `json:"translations,omitempty"`
	UpdatedAt    *time.Time                     `json:"updatedAt,omitempty"`
}

type ProductFeatureSetTranslation

type ProductFeatureSetTranslation struct {
	CreatedAt           *time.Time         `json:"createdAt,omitempty"`
	Description         string             `json:"description,omitempty"`
	Language            *Language          `json:"language,omitempty"`
	LanguageId          string             `json:"languageId,omitempty"`
	Name                string             `json:"name,omitempty"`
	ProductFeatureSet   *ProductFeatureSet `json:"productFeatureSet,omitempty"`
	ProductFeatureSetId string             `json:"productFeatureSetId,omitempty"`
	UpdatedAt           *time.Time         `json:"updatedAt,omitempty"`
}

type ProductKeywordDictionary

type ProductKeywordDictionary struct {
	Id         string    `json:"id,omitempty"`
	Keyword    string    `json:"keyword,omitempty"` // required
	Language   *Language `json:"language,omitempty"`
	LanguageId string    `json:"languageId,omitempty"` // required
	Reversed   string    `json:"reversed,omitempty"`
}

type ProductManufacturer

type ProductManufacturer struct {
	CreatedAt    *time.Time                       `json:"createdAt,omitempty"`
	CustomFields interface{}                      `json:"customFields,omitempty"`
	Description  string                           `json:"description"`
	Id           string                           `json:"id,omitempty"`
	Link         string                           `json:"link,omitempty"`
	Media        *Media                           `json:"media,omitempty"`
	MediaId      *string                          `json:"mediaId"`
	Name         string                           `json:"name,omitempty"` // required
	Products     []Product                        `json:"products,omitempty"`
	Translated   interface{}                      `json:"translated,omitempty"`
	Translations []ProductManufacturerTranslation `json:"translations,omitempty"`
	UpdatedAt    *time.Time                       `json:"updatedAt,omitempty"`
	VersionId    string                           `json:"versionId,omitempty"`
}

type ProductManufacturerTranslation

type ProductManufacturerTranslation struct {
	CreatedAt                    *time.Time           `json:"createdAt,omitempty"`
	CustomFields                 interface{}          `json:"customFields,omitempty"`
	Description                  string               `json:"description,omitempty"`
	Language                     *Language            `json:"language,omitempty"`
	LanguageId                   string               `json:"languageId,omitempty"`
	Name                         string               `json:"name,omitempty"`
	ProductManufacturer          *ProductManufacturer `json:"productManufacturer,omitempty"`
	ProductManufacturerId        string               `json:"productManufacturerId,omitempty"`
	ProductManufacturerVersionId string               `json:"productManufacturerVersionId,omitempty"`
	UpdatedAt                    *time.Time           `json:"updatedAt,omitempty"`
}

type ProductMedia

type ProductMedia struct {
	CreatedAt        *time.Time  `json:"createdAt,omitempty"`
	CustomFields     interface{} `json:"customFields,omitempty"`
	Id               string      `json:"id,omitempty"`
	Media            *Media      `json:"media,omitempty"`
	MediaId          string      `json:"mediaId,omitempty"` // required
	Position         float64     `json:"position,omitempty"`
	Product          *Product    `json:"product,omitempty"`
	ProductId        string      `json:"productId,omitempty"` // required
	ProductVersionId string      `json:"productVersionId,omitempty"`
	UpdatedAt        *time.Time  `json:"updatedAt,omitempty"`
	VersionId        string      `json:"versionId,omitempty"`
}

type ProductOption

type ProductOption struct {
	Option           *PropertyGroupOption `json:"option,omitempty"`
	OptionId         string               `json:"optionId,omitempty"` // required
	Product          *Product             `json:"product,omitempty"`
	ProductId        string               `json:"productId,omitempty"` // required
	ProductVersionId string               `json:"productVersionId,omitempty"`
}

type ProductPrice

type ProductPrice struct {
	CreatedAt        *time.Time  `json:"createdAt,omitempty"`
	CustomFields     interface{} `json:"customFields,omitempty"`
	Id               string      `json:"id,omitempty"`
	Price            interface{} `json:"price,omitempty"` // required
	Product          *Product    `json:"product,omitempty"`
	ProductId        string      `json:"productId,omitempty"` // required
	ProductVersionId string      `json:"productVersionId,omitempty"`
	QuantityEnd      int64       `json:"quantityEnd,omitempty"`
	QuantityStart    int64       `json:"quantityStart,omitempty"` // required
	Rule             *Rule       `json:"rule,omitempty"`
	RuleId           string      `json:"ruleId,omitempty"` // required
	UpdatedAt        *time.Time  `json:"updatedAt,omitempty"`
	VersionId        string      `json:"versionId,omitempty"`
}

type ProductProperty

type ProductProperty struct {
	Option           *PropertyGroupOption `json:"option,omitempty"`
	OptionId         string               `json:"optionId,omitempty"` // required
	Product          *Product             `json:"product,omitempty"`
	ProductId        string               `json:"productId,omitempty"` // required
	ProductVersionId string               `json:"productVersionId,omitempty"`
}

type ProductReview

type ProductReview struct {
	Comment          string        `json:"comment,omitempty"`
	Content          string        `json:"content,omitempty"` // required
	CreatedAt        *time.Time    `json:"createdAt,omitempty"`
	Customer         *Customer     `json:"customer,omitempty"`
	CustomerId       string        `json:"customerId,omitempty"`
	CustomFields     interface{}   `json:"customFields,omitempty"`
	ExternalEmail    string        `json:"externalEmail,omitempty"`
	ExternalUser     string        `json:"externalUser,omitempty"`
	Id               string        `json:"id,omitempty"`
	Language         *Language     `json:"language,omitempty"`
	LanguageId       string        `json:"languageId,omitempty"` // required
	Points           float64       `json:"points,omitempty"`
	Product          *Product      `json:"product,omitempty"`
	ProductId        string        `json:"productId,omitempty"` // required
	ProductVersionId string        `json:"productVersionId,omitempty"`
	SalesChannel     *SalesChannel `json:"salesChannel,omitempty"`
	SalesChannelId   string        `json:"salesChannelId,omitempty"` // required
	Status           bool          `json:"status"`
	Title            string        `json:"title,omitempty"` // required
	UpdatedAt        *time.Time    `json:"updatedAt,omitempty"`
}

type ProductSearchConfig

type ProductSearchConfig struct {
	AndLogic        bool                       `json:"andLogic"` // required
	ConfigFields    []ProductSearchConfigField `json:"configFields,omitempty"`
	CreatedAt       *time.Time                 `json:"createdAt,omitempty"`
	ExcludedTerms   interface{}                `json:"excludedTerms,omitempty"`
	Id              string                     `json:"id,omitempty"`
	Language        *Language                  `json:"language,omitempty"`
	LanguageId      string                     `json:"languageId,omitempty"`      // required
	MinSearchLength int64                      `json:"minSearchLength,omitempty"` // required
	UpdatedAt       *time.Time                 `json:"updatedAt,omitempty"`
}

type ProductSearchConfigField

type ProductSearchConfigField struct {
	CreatedAt      *time.Time           `json:"createdAt,omitempty"`
	CustomField    *CustomField         `json:"customField,omitempty"`
	CustomFieldId  string               `json:"customFieldId,omitempty"`
	Field          string               `json:"field,omitempty"` // required
	Id             string               `json:"id,omitempty"`
	Ranking        int64                `json:"ranking,omitempty"` // required
	Searchable     bool                 `json:"searchable"`        // required
	SearchConfig   *ProductSearchConfig `json:"searchConfig,omitempty"`
	SearchConfigId string               `json:"searchConfigId,omitempty"` // required
	Tokenize       bool                 `json:"tokenize"`                 // required
	UpdatedAt      *time.Time           `json:"updatedAt,omitempty"`
}

type ProductSearchKeyword

type ProductSearchKeyword struct {
	CreatedAt        *time.Time `json:"createdAt,omitempty"`
	Id               string     `json:"id,omitempty"`
	Keyword          string     `json:"keyword,omitempty"` // required
	Language         *Language  `json:"language,omitempty"`
	LanguageId       string     `json:"languageId,omitempty"` // required
	Product          *Product   `json:"product,omitempty"`
	ProductId        string     `json:"productId,omitempty"` // required
	ProductVersionId string     `json:"productVersionId,omitempty"`
	Ranking          float64    `json:"ranking,omitempty"` // required
	UpdatedAt        *time.Time `json:"updatedAt,omitempty"`
	VersionId        string     `json:"versionId,omitempty"`
}

type ProductSorting

type ProductSorting struct {
	Active       bool                        `json:"active"` // required
	CreatedAt    *time.Time                  `json:"createdAt,omitempty"`
	Fields       interface{}                 `json:"fields,omitempty"` // required
	Id           string                      `json:"id,omitempty"`
	Key          string                      `json:"key,omitempty"`   // required
	Label        string                      `json:"label,omitempty"` // required
	Locked       bool                        `json:"locked"`
	Priority     int64                       `json:"priority,omitempty"` // required
	Translated   interface{}                 `json:"translated,omitempty"`
	Translations []ProductSortingTranslation `json:"translations,omitempty"`
	UpdatedAt    *time.Time                  `json:"updatedAt,omitempty"`
}

type ProductSortingTranslation

type ProductSortingTranslation struct {
	CreatedAt        *time.Time      `json:"createdAt,omitempty"`
	Label            string          `json:"label,omitempty"`
	Language         *Language       `json:"language,omitempty"`
	LanguageId       string          `json:"languageId,omitempty"`
	ProductSorting   *ProductSorting `json:"productSorting,omitempty"`
	ProductSortingId string          `json:"productSortingId,omitempty"`
	UpdatedAt        *time.Time      `json:"updatedAt,omitempty"`
}

type ProductStream

type ProductStream struct {
	ApiFilter            interface{}                `json:"apiFilter,omitempty"`
	Categories           []Category                 `json:"categories,omitempty"`
	CreatedAt            *time.Time                 `json:"createdAt,omitempty"`
	CustomFields         interface{}                `json:"customFields,omitempty"`
	Description          string                     `json:"description,omitempty"`
	Filters              []ProductStreamFilter      `json:"filters,omitempty"`
	Id                   string                     `json:"id,omitempty"`
	Invalid              bool                       `json:"invalid"`
	Name                 string                     `json:"name,omitempty"` // required
	ProductCrossSellings []ProductCrossSelling      `json:"productCrossSellings,omitempty"`
	ProductExports       []ProductExport            `json:"productExports,omitempty"`
	Translated           interface{}                `json:"translated,omitempty"`
	Translations         []ProductStreamTranslation `json:"translations,omitempty"`
	UpdatedAt            *time.Time                 `json:"updatedAt,omitempty"`
}

type ProductStreamFilter

type ProductStreamFilter struct {
	CreatedAt       *time.Time            `json:"createdAt,omitempty"`
	CustomFields    interface{}           `json:"customFields,omitempty"`
	Field           string                `json:"field,omitempty"`
	Id              string                `json:"id,omitempty"`
	Operator        string                `json:"operator,omitempty"`
	Parameters      interface{}           `json:"parameters,omitempty"`
	Parent          *ProductStreamFilter  `json:"parent,omitempty"`
	ParentId        string                `json:"parentId,omitempty"`
	Position        float64               `json:"position,omitempty"`
	ProductStream   *ProductStream        `json:"productStream,omitempty"`
	ProductStreamId string                `json:"productStreamId,omitempty"` // required
	Queries         []ProductStreamFilter `json:"queries,omitempty"`
	Type            string                `json:"type,omitempty"` // required
	UpdatedAt       *time.Time            `json:"updatedAt,omitempty"`
	Value           string                `json:"value,omitempty"`
}

type ProductStreamMapping

type ProductStreamMapping struct {
	Product          *Product       `json:"product,omitempty"`
	ProductId        string         `json:"productId,omitempty"` // required
	ProductStream    *ProductStream `json:"productStream,omitempty"`
	ProductStreamId  string         `json:"productStreamId,omitempty"` // required
	ProductVersionId string         `json:"productVersionId,omitempty"`
}

type ProductStreamTranslation

type ProductStreamTranslation struct {
	Name            string         `json:"name,omitempty"`
	CreatedAt       *time.Time     `json:"createdAt,omitempty"`
	UpdatedAt       *time.Time     `json:"updatedAt,omitempty"`
	ProductStreamId string         `json:"productStreamId,omitempty"`
	LanguageId      string         `json:"languageId,omitempty"`
	Description     string         `json:"description,omitempty"`
	CustomFields    interface{}    `json:"customFields,omitempty"`
	ProductStream   *ProductStream `json:"productStream,omitempty"`
	Language        *Language      `json:"language,omitempty"`
}

type ProductTag

type ProductTag struct {
	Product          *Product `json:"product,omitempty"`
	ProductId        string   `json:"productId,omitempty"` // required
	ProductVersionId string   `json:"productVersionId,omitempty"`
	Tag              *Tag     `json:"tag,omitempty"`
	TagId            string   `json:"tagId,omitempty"` // required
}

type ProductTranslation

type ProductTranslation struct {
	CreatedAt            *time.Time  `json:"createdAt,omitempty"`
	CustomFields         interface{} `json:"customFields,omitempty"`
	CustomSearchKeywords interface{} `json:"customSearchKeywords,omitempty"`
	Description          string      `json:"description,omitempty"`
	Keywords             string      `json:"keywords,omitempty"`
	Language             *Language   `json:"language,omitempty"`
	LanguageId           string      `json:"languageId,omitempty"`
	MetaDescription      string      `json:"metaDescription,omitempty"`
	MetaTitle            string      `json:"metaTitle,omitempty"`
	Name                 string      `json:"name,omitempty"`
	PackUnit             string      `json:"packUnit,omitempty"`
	PackUnitPlural       string      `json:"packUnitPlural,omitempty"`
	Product              *Product    `json:"product,omitempty"`
	ProductId            string      `json:"productId,omitempty"`
	ProductVersionId     string      `json:"productVersionId,omitempty"`
	SlotConfig           interface{} `json:"slotConfig,omitempty"`
	UpdatedAt            *time.Time  `json:"updatedAt,omitempty"`
}

type ProductVisibility

type ProductVisibility struct {
	CreatedAt        *time.Time    `json:"createdAt,omitempty"`
	Id               string        `json:"id,omitempty"`
	Product          *Product      `json:"product,omitempty"`
	ProductId        string        `json:"productId,omitempty"` // required
	ProductVersionId string        `json:"productVersionId,omitempty"`
	SalesChannel     *SalesChannel `json:"salesChannel,omitempty"`
	SalesChannelId   string        `json:"salesChannelId,omitempty"` // required
	UpdatedAt        *time.Time    `json:"updatedAt,omitempty"`
	Visibility       int64         `json:"visibility,omitempty"` // required
}

type Promotion

type Promotion struct {
	Active                    bool                      `json:"active"` // required
	CartRules                 []Rule                    `json:"cartRules,omitempty"`
	Code                      string                    `json:"code,omitempty"`
	CreatedAt                 *time.Time                `json:"createdAt,omitempty"`
	CustomerRestriction       bool                      `json:"customerRestriction"`
	CustomFields              interface{}               `json:"customFields,omitempty"`
	Discounts                 []PromotionDiscount       `json:"discounts,omitempty"`
	ExclusionIds              interface{}               `json:"exclusionIds,omitempty"`
	Exclusive                 bool                      `json:"exclusive"` // required
	Id                        string                    `json:"id,omitempty"`
	IndividualCodePattern     string                    `json:"individualCodePattern,omitempty"`
	IndividualCodes           []PromotionIndividualCode `json:"individualCodes,omitempty"`
	MaxRedemptionsGlobal      float64                   `json:"maxRedemptionsGlobal,omitempty"`
	MaxRedemptionsPerCustomer float64                   `json:"maxRedemptionsPerCustomer,omitempty"`
	Name                      string                    `json:"name,omitempty"` // required
	OrderCount                float64                   `json:"orderCount,omitempty"`
	OrderRules                []Rule                    `json:"orderRules,omitempty"`
	OrdersPerCustomerCount    interface{}               `json:"ordersPerCustomerCount,omitempty"`
	PersonaCustomers          []Customer                `json:"personaCustomers,omitempty"`
	PersonaRules              []Rule                    `json:"personaRules,omitempty"`
	PreventCombination        bool                      `json:"preventCombination"` // required
	Priority                  int64                     `json:"priority,omitempty"` // required
	SalesChannels             []PromotionSalesChannel   `json:"salesChannels,omitempty"`
	Setgroups                 []PromotionSetgroup       `json:"setgroups,omitempty"`
	Translated                interface{}               `json:"translated,omitempty"`
	Translations              []PromotionTranslation    `json:"translations,omitempty"`
	UpdatedAt                 *time.Time                `json:"updatedAt,omitempty"`
	UseCodes                  bool                      `json:"useCodes"`           // required
	UseIndividualCodes        bool                      `json:"useIndividualCodes"` // required
	UseSetGroups              bool                      `json:"useSetGroups"`       // required
	ValidFrom                 *time.Time                `json:"validFrom,omitempty"`
	ValidUntil                *time.Time                `json:"validUntil,omitempty"`
}

type PromotionCartRule

type PromotionCartRule struct {
	Promotion   *Promotion `json:"promotion,omitempty"`
	PromotionId string     `json:"promotionId,omitempty"` // required
	Rule        *Rule      `json:"rule,omitempty"`
	RuleId      string     `json:"ruleId,omitempty"` // required
}

type PromotionDiscount

type PromotionDiscount struct {
	ApplierKey              string                    `json:"applierKey,omitempty"`
	ConsiderAdvancedRules   bool                      `json:"considerAdvancedRules"` // required
	CreatedAt               *time.Time                `json:"createdAt,omitempty"`
	DiscountRules           []Rule                    `json:"discountRules,omitempty"`
	Id                      string                    `json:"id,omitempty"`
	MaxValue                float64                   `json:"maxValue,omitempty"`
	PickerKey               string                    `json:"pickerKey,omitempty"`
	Promotion               *Promotion                `json:"promotion,omitempty"`
	PromotionDiscountPrices []PromotionDiscountPrices `json:"promotionDiscountPrices,omitempty"`
	PromotionId             string                    `json:"promotionId,omitempty"` // required
	Scope                   string                    `json:"scope,omitempty"`       // required
	SorterKey               string                    `json:"sorterKey,omitempty"`
	Type                    string                    `json:"type,omitempty"` // required
	UpdatedAt               *time.Time                `json:"updatedAt,omitempty"`
	UsageKey                string                    `json:"usageKey,omitempty"`
	Value                   float64                   `json:"value,omitempty"` // required
}

type PromotionDiscountPrices

type PromotionDiscountPrices struct {
	CreatedAt         *time.Time         `json:"createdAt,omitempty"`
	Currency          *Currency          `json:"currency,omitempty"`
	CurrencyId        string             `json:"currencyId,omitempty"` // required
	DiscountId        string             `json:"discountId,omitempty"` // required
	Id                string             `json:"id,omitempty"`
	Price             float64            `json:"price,omitempty"` // required
	PromotionDiscount *PromotionDiscount `json:"promotionDiscount,omitempty"`
	UpdatedAt         *time.Time         `json:"updatedAt,omitempty"`
}

type PromotionDiscountRule

type PromotionDiscountRule struct {
	Discount   *PromotionDiscount `json:"discount,omitempty"`
	DiscountId string             `json:"discountId,omitempty"` // required
	Rule       *Rule              `json:"rule,omitempty"`
	RuleId     string             `json:"ruleId,omitempty"` // required
}

type PromotionIndividualCode

type PromotionIndividualCode struct {
	Code        string      `json:"code,omitempty"` // required
	CreatedAt   *time.Time  `json:"createdAt,omitempty"`
	Id          string      `json:"id,omitempty"`
	Payload     interface{} `json:"payload,omitempty"`
	Promotion   *Promotion  `json:"promotion,omitempty"`
	PromotionId string      `json:"promotionId,omitempty"` // required
	UpdatedAt   *time.Time  `json:"updatedAt,omitempty"`
}

type PromotionOrderRule

type PromotionOrderRule struct {
	Promotion   *Promotion `json:"promotion,omitempty"`
	PromotionId string     `json:"promotionId,omitempty"` // required
	Rule        *Rule      `json:"rule,omitempty"`
	RuleId      string     `json:"ruleId,omitempty"` // required
}

type PromotionPersonaCustomer

type PromotionPersonaCustomer struct {
	Customer    *Customer  `json:"customer,omitempty"`
	CustomerId  string     `json:"customerId,omitempty"` // required
	Promotion   *Promotion `json:"promotion,omitempty"`
	PromotionId string     `json:"promotionId,omitempty"` // required
}

type PromotionPersonaRule

type PromotionPersonaRule struct {
	Promotion   *Promotion `json:"promotion,omitempty"`
	PromotionId string     `json:"promotionId,omitempty"` // required
	Rule        *Rule      `json:"rule,omitempty"`
	RuleId      string     `json:"ruleId,omitempty"` // required
}

type PromotionSalesChannel

type PromotionSalesChannel struct {
	CreatedAt      *time.Time    `json:"createdAt,omitempty"`
	Id             string        `json:"id,omitempty"`
	Priority       int64         `json:"priority,omitempty"` // required
	Promotion      *Promotion    `json:"promotion,omitempty"`
	PromotionId    string        `json:"promotionId,omitempty"` // required
	SalesChannel   *SalesChannel `json:"salesChannel,omitempty"`
	SalesChannelId string        `json:"salesChannelId,omitempty"` // required
	UpdatedAt      *time.Time    `json:"updatedAt,omitempty"`
}

type PromotionSetgroup

type PromotionSetgroup struct {
	CreatedAt     *time.Time `json:"createdAt,omitempty"`
	Id            string     `json:"id,omitempty"`
	PackagerKey   string     `json:"packagerKey,omitempty"` // required
	Promotion     *Promotion `json:"promotion,omitempty"`
	PromotionId   string     `json:"promotionId,omitempty"` // required
	SetGroupRules []Rule     `json:"setGroupRules,omitempty"`
	SorterKey     string     `json:"sorterKey,omitempty"` // required
	UpdatedAt     *time.Time `json:"updatedAt,omitempty"`
	Value         float64    `json:"value,omitempty"` // required
}

type PromotionSetgroupRule

type PromotionSetgroupRule struct {
	Rule       *Rule              `json:"rule,omitempty"`
	RuleId     string             `json:"ruleId,omitempty"` // required
	Setgroup   *PromotionSetgroup `json:"setgroup,omitempty"`
	SetgroupId string             `json:"setgroupId,omitempty"` // required
}

type PromotionTranslation

type PromotionTranslation struct {
	CreatedAt    *time.Time  `json:"createdAt,omitempty"`
	CustomFields interface{} `json:"customFields,omitempty"`
	Language     *Language   `json:"language,omitempty"`
	LanguageId   string      `json:"languageId,omitempty"`
	Name         string      `json:"name,omitempty"`
	Promotion    *Promotion  `json:"promotion,omitempty"`
	PromotionId  string      `json:"promotionId,omitempty"`
	UpdatedAt    *time.Time  `json:"updatedAt,omitempty"`
}

type PropertyGroup

type PropertyGroup struct {
	CreatedAt                  *time.Time                 `json:"createdAt,omitempty"`
	CustomFields               interface{}                `json:"customFields,omitempty"`
	Description                string                     `json:"description,omitempty"`
	DisplayType                string                     `json:"displayType,omitempty"` // required
	Filterable                 bool                       `json:"filterable"`
	Id                         string                     `json:"id,omitempty"`
	Name                       string                     `json:"name,omitempty"` // required
	Options                    []PropertyGroupOption      `json:"options,omitempty"`
	Position                   float64                    `json:"position,omitempty"`
	SortingType                string                     `json:"sortingType,omitempty"` // required
	Translated                 interface{}                `json:"translated,omitempty"`
	Translations               []PropertyGroupTranslation `json:"translations,omitempty"`
	UpdatedAt                  *time.Time                 `json:"updatedAt,omitempty"`
	VisibleOnProductDetailPage bool                       `json:"visibleOnProductDetailPage"`
}

type PropertyGroupOption

type PropertyGroupOption struct {
	ColorHexCode                string                           `json:"colorHexCode,omitempty"`
	CreatedAt                   *time.Time                       `json:"createdAt,omitempty"`
	CustomFields                interface{}                      `json:"customFields,omitempty"`
	Group                       *PropertyGroup                   `json:"group,omitempty"`
	GroupId                     string                           `json:"groupId,omitempty"` // required
	Id                          string                           `json:"id,omitempty"`
	Media                       *Media                           `json:"media,omitempty"`
	MediaId                     *string                          `json:"mediaId"`
	Name                        string                           `json:"name,omitempty"` // required
	Position                    float64                          `json:"position,omitempty"`
	ProductConfiguratorSettings []ProductConfiguratorSetting     `json:"productConfiguratorSettings,omitempty"`
	ProductOptions              []Product                        `json:"productOptions,omitempty"`
	ProductProperties           []Product                        `json:"productProperties,omitempty"`
	Translated                  interface{}                      `json:"translated,omitempty"`
	Translations                []PropertyGroupOptionTranslation `json:"translations,omitempty"`
	UpdatedAt                   *time.Time                       `json:"updatedAt,omitempty"`
}

type PropertyGroupOptionTranslation

type PropertyGroupOptionTranslation struct {
	CreatedAt             *time.Time           `json:"createdAt,omitempty"`
	CustomFields          interface{}          `json:"customFields,omitempty"`
	Language              *Language            `json:"language,omitempty"`
	LanguageId            string               `json:"languageId,omitempty"`
	Name                  string               `json:"name,omitempty"`
	Position              float64              `json:"position,omitempty"`
	PropertyGroupOption   *PropertyGroupOption `json:"propertyGroupOption,omitempty"`
	PropertyGroupOptionId string               `json:"propertyGroupOptionId,omitempty"`
	UpdatedAt             *time.Time           `json:"updatedAt,omitempty"`
}

type PropertyGroupTranslation

type PropertyGroupTranslation struct {
	CreatedAt       *time.Time     `json:"createdAt,omitempty"`
	CustomFields    interface{}    `json:"customFields,omitempty"`
	Description     string         `json:"description,omitempty"`
	Language        *Language      `json:"language,omitempty"`
	LanguageId      string         `json:"languageId,omitempty"`
	Name            string         `json:"name,omitempty"`
	Position        float64        `json:"position,omitempty"`
	PropertyGroup   *PropertyGroup `json:"propertyGroup,omitempty"`
	PropertyGroupId string         `json:"propertyGroupId,omitempty"`
	UpdatedAt       *time.Time     `json:"updatedAt,omitempty"`
}

type Refund

type Refund struct {
	Id                 string             `json:"id,omitempty"`
	CaptureId          string             `json:"captureId,omitempty"` // required
	StateId            string             `json:"stateId,omitempty"`   // required
	ExternalReference  string             `json:"externalReference,omitempty"`
	Reason             string             `json:"reason,omitempty"`
	TotalAmount        float64            `json:"totalAmount,omitempty"` // required
	Amount             Amount             `json:"amount,omitempty"`      // required
	CustomFields       interface{}        `json:"customFields,omitempty"`
	CreatedAt          *time.Time         `json:"createdAt,omitempty"`
	UpdatedAt          *time.Time         `json:"updatedAt,omitempty"`
	StateMachineState  *StateMachineState `json:"stateMachineState,omitempty"`
	TransactionCapture interface{}        `json:"transactionCapture,omitempty"`
	Positions          Position           `json:"positions,omitempty"`
}

type RegulationPrice

type RegulationPrice struct {
	Price float64 `json:"price,omitempty"` // required
}

type Rounding

type Rounding struct {
	Decimals    int64 `json:"decimals,omitempty"`  // required
	Intervals   int64 `json:"intervals,omitempty"` // required
	RoundForNet bool  `json:"roundForNet"`         // required
}

type Rule

type Rule struct {
	CartPromotions                  []Promotion           `json:"cartPromotions,omitempty"`
	Conditions                      []RuleCondition       `json:"conditions,omitempty"`
	CreatedAt                       *time.Time            `json:"createdAt,omitempty"`
	CustomFields                    interface{}           `json:"customFields,omitempty"`
	Description                     string                `json:"description,omitempty"`
	EventActions                    []EventAction         `json:"eventActions,omitempty"`
	FlowSequences                   []FlowSequence        `json:"flowSequences,omitempty"`
	Id                              string                `json:"id,omitempty"`
	Invalid                         bool                  `json:"invalid"`
	ModuleTypes                     interface{}           `json:"moduleTypes,omitempty"`
	Name                            string                `json:"name,omitempty"` // required
	OrderPromotions                 []Promotion           `json:"orderPromotions,omitempty"`
	Payload                         interface{}           `json:"payload,omitempty"`
	PaymentMethods                  []PaymentMethod       `json:"paymentMethods,omitempty"`
	PersonaPromotions               []Promotion           `json:"personaPromotions,omitempty"`
	Priority                        int64                 `json:"priority,omitempty"` // required
	ProductPrices                   []ProductPrice        `json:"productPrices,omitempty"`
	PromotionDiscounts              []PromotionDiscount   `json:"promotionDiscounts,omitempty"`
	PromotionSetGroups              []PromotionSetgroup   `json:"promotionSetGroups,omitempty"`
	ShippingMethodPriceCalculations []ShippingMethodPrice `json:"shippingMethodPriceCalculations,omitempty"`
	ShippingMethodPrices            []ShippingMethodPrice `json:"shippingMethodPrices,omitempty"`
	ShippingMethods                 []ShippingMethod      `json:"shippingMethods,omitempty"`
	Tags                            RuleTag               `json:"tags,omitempty"`
	UpdatedAt                       *time.Time            `json:"updatedAt,omitempty"`
}

type RuleCondition

type RuleCondition struct {
	Children     []RuleCondition `json:"children,omitempty"`
	CreatedAt    *time.Time      `json:"createdAt,omitempty"`
	CustomFields interface{}     `json:"customFields,omitempty"`
	Id           string          `json:"id,omitempty"`
	Parent       *RuleCondition  `json:"parent,omitempty"`
	ParentId     string          `json:"parentId,omitempty"`
	Position     float64         `json:"position,omitempty"`
	Rule         *Rule           `json:"rule,omitempty"`
	RuleId       string          `json:"ruleId,omitempty"` // required
	Type         string          `json:"type,omitempty"`   // required
	UpdatedAt    *time.Time      `json:"updatedAt,omitempty"`
	Value        interface{}     `json:"value,omitempty"`
}

type RuleTag

type RuleTag struct {
	Id     string `json:"id,omitempty"`
	Rule   *Rule  `json:"rule,omitempty"`
	RuleId string `json:"ruleId,omitempty"` // required
	Tag    *Tag   `json:"tag,omitempty"`
	TagId  string `json:"tagId,omitempty"` // required
}

type SalesChannel

type SalesChannel struct {
	AccessKey                       string                           `json:"accessKey,omitempty"` // required
	Active                          bool                             `json:"active"`
	Analytics                       *SalesChannelAnalytics           `json:"analytics,omitempty"`
	AnalyticsId                     string                           `json:"analyticsId,omitempty"`
	BoundCustomers                  []Customer                       `json:"boundCustomers,omitempty"`
	Configuration                   interface{}                      `json:"configuration,omitempty"`
	Countries                       []Country                        `json:"countries,omitempty"`
	Country                         *Country                         `json:"country,omitempty"`
	CountryId                       string                           `json:"countryId,omitempty"` // required
	CreatedAt                       *time.Time                       `json:"createdAt,omitempty"`
	Currencies                      []Currency                       `json:"currencies,omitempty"`
	Currency                        *Currency                        `json:"currency,omitempty"`
	CurrencyId                      string                           `json:"currencyId,omitempty"` // required
	CustomerGroup                   *CustomerGroup                   `json:"customerGroup,omitempty"`
	CustomerGroupId                 string                           `json:"customerGroupId,omitempty"` // required
	CustomerGroupsRegistrations     []CustomerGroup                  `json:"customerGroupsRegistrations,omitempty"`
	Customers                       []Customer                       `json:"customers,omitempty"`
	CustomFields                    interface{}                      `json:"customFields,omitempty"`
	DocumentBaseConfigSalesChannels []DocumentBaseConfigSalesChannel `json:"documentBaseConfigSalesChannels,omitempty"`
	Domains                         []SalesChannelDomain             `json:"domains,omitempty"`
	EventActions                    []EventAction                    `json:"eventActions,omitempty"`
	FooterCategory                  *Category                        `json:"footerCategory,omitempty"`
	FooterCategoryId                string                           `json:"footerCategoryId,omitempty"`
	FooterCategoryVersionId         string                           `json:"footerCategoryVersionId,omitempty"`
	HomeCmsPage                     *CmsPage                         `json:"homeCmsPage,omitempty"`
	HomeCmsPageId                   string                           `json:"homeCmsPageId,omitempty"`
	HomeCmsPageVersionId            string                           `json:"homeCmsPageVersionId,omitempty"`
	HomeEnabled                     bool                             `json:"homeEnabled"` // required
	HomeKeywords                    string                           `json:"homeKeywords,omitempty"`
	HomeMetaDescription             string                           `json:"homeMetaDescription,omitempty"`
	HomeMetaTitle                   string                           `json:"homeMetaTitle,omitempty"`
	HomeName                        string                           `json:"homeName,omitempty"`
	HomeSlotConfig                  interface{}                      `json:"homeSlotConfig,omitempty"`
	HreflangActive                  bool                             `json:"hreflangActive"`
	HreflangDefaultDomain           *SalesChannelDomain              `json:"hreflangDefaultDomain,omitempty"`
	HreflangDefaultDomainId         string                           `json:"hreflangDefaultDomainId,omitempty"`
	Id                              string                           `json:"id,omitempty"`
	LandingPages                    []LandingPage                    `json:"landingPages,omitempty"`
	Language                        *Language                        `json:"language,omitempty"`
	LanguageId                      string                           `json:"languageId,omitempty"`
	Languages                       []Language                       `json:"languages,omitempty"`
	MailHeaderFooter                *MailHeaderFooter                `json:"mailHeaderFooter,omitempty"`
	MailHeaderFooterId              string                           `json:"mailHeaderFooterId,omitempty"`
	MainCategories                  []MainCategory                   `json:"mainCategories,omitempty"`
	Maintenance                     bool                             `json:"maintenance"`
	MaintenanceIpWhitelist          interface{}                      `json:"maintenanceIpWhitelist,omitempty"`
	Name                            string                           `json:"name,omitempty"` // required
	NavigationCategory              *Category                        `json:"navigationCategory,omitempty"`
	NavigationCategoryDepth         float64                          `json:"navigationCategoryDepth,omitempty"`
	NavigationCategoryId            string                           `json:"navigationCategoryId,omitempty"` // required
	NavigationCategoryVersionId     string                           `json:"navigationCategoryVersionId,omitempty"`
	NewsletterRecipients            []NewsletterRecipient            `json:"newsletterRecipients,omitempty"`
	NumberRangeSalesChannels        []NumberRangeSalesChannel        `json:"numberRangeSalesChannels,omitempty"`
	Orders                          []Order                          `json:"orders,omitempty"`
	PaymentMethod                   *PaymentMethod                   `json:"paymentMethod,omitempty"`
	PaymentMethodId                 string                           `json:"paymentMethodId,omitempty"` // required
	PaymentMethodIds                interface{}                      `json:"paymentMethodIds,omitempty"`
	PaymentMethods                  []PaymentMethod                  `json:"paymentMethods,omitempty"`
	ProductExports                  []ProductExport                  `json:"productExports,omitempty"`
	ProductReviews                  []ProductReview                  `json:"productReviews,omitempty"`
	ProductVisibilities             []ProductVisibility              `json:"productVisibilities,omitempty"`
	PromotionSalesChannels          []PromotionSalesChannel          `json:"promotionSalesChannels,omitempty"`
	SeoUrls                         []SeoUrl                         `json:"seoUrls,omitempty"`
	SeoUrlTemplates                 []SeoUrlTemplate                 `json:"seoUrlTemplates,omitempty"`
	ServiceCategory                 *Category                        `json:"serviceCategory,omitempty"`
	ServiceCategoryId               string                           `json:"serviceCategoryId,omitempty"`
	ServiceCategoryVersionId        string                           `json:"serviceCategoryVersionId,omitempty"`
	ShippingMethod                  *ShippingMethod                  `json:"shippingMethod,omitempty"`
	ShippingMethodId                string                           `json:"shippingMethodId,omitempty"` // required
	ShippingMethods                 []ShippingMethod                 `json:"shippingMethods,omitempty"`
	ShortName                       string                           `json:"shortName,omitempty"`
	SystemConfigs                   []SystemConfig                   `json:"systemConfigs,omitempty"`
	TaxCalculationType              string                           `json:"taxCalculationType,omitempty"`
	Themes                          []Theme                          `json:"themes,omitempty"`
	Translated                      interface{}                      `json:"translated,omitempty"`
	Translations                    []SalesChannelTranslation        `json:"translations,omitempty"`
	Type                            *SalesChannelType                `json:"type,omitempty"`
	TypeId                          string                           `json:"typeId,omitempty"` // required
	UpdatedAt                       *time.Time                       `json:"updatedAt,omitempty"`
	Wishlists                       []CustomerWishlist               `json:"wishlists,omitempty"`
}

type SalesChannelAnalytics

type SalesChannelAnalytics struct {
	Active       bool          `json:"active"`
	AnonymizeIp  bool          `json:"anonymizeIp"`
	CreatedAt    *time.Time    `json:"createdAt,omitempty"`
	Id           string        `json:"id,omitempty"`
	SalesChannel *SalesChannel `json:"salesChannel,omitempty"`
	TrackingId   string        `json:"trackingId,omitempty"`
	TrackOrders  bool          `json:"trackOrders"`
	UpdatedAt    *time.Time    `json:"updatedAt,omitempty"`
}

type SalesChannelCountry

type SalesChannelCountry struct {
	Country        *Country      `json:"country,omitempty"`
	CountryId      string        `json:"countryId,omitempty"` // required
	SalesChannel   *SalesChannel `json:"salesChannel,omitempty"`
	SalesChannelId string        `json:"salesChannelId,omitempty"` // required
}

type SalesChannelCurrency

type SalesChannelCurrency struct {
	Currency       *Currency     `json:"currency,omitempty"`
	CurrencyId     string        `json:"currencyId,omitempty"` // required
	SalesChannel   *SalesChannel `json:"salesChannel,omitempty"`
	SalesChannelId string        `json:"salesChannelId,omitempty"` // required
}

type SalesChannelDomain

type SalesChannelDomain struct {
	CreatedAt                   *time.Time      `json:"createdAt,omitempty"`
	Currency                    *Currency       `json:"currency,omitempty"`
	CurrencyId                  string          `json:"currencyId,omitempty"` // required
	CustomFields                interface{}     `json:"customFields,omitempty"`
	HreflangUseOnlyLocale       bool            `json:"hreflangUseOnlyLocale"`
	Id                          string          `json:"id,omitempty"`
	Language                    *Language       `json:"language,omitempty"`
	LanguageId                  string          `json:"languageId,omitempty"` // required
	ProductExports              []ProductExport `json:"productExports,omitempty"`
	SalesChannel                *SalesChannel   `json:"salesChannel,omitempty"`
	SalesChannelDefaultHreflang *SalesChannel   `json:"salesChannelDefaultHreflang,omitempty"`
	SalesChannelId              string          `json:"salesChannelId,omitempty"` // required
	SnippetSet                  *SnippetSet     `json:"snippetSet,omitempty"`
	SnippetSetId                string          `json:"snippetSetId,omitempty"` // required
	UpdatedAt                   *time.Time      `json:"updatedAt,omitempty"`
	Url                         string          `json:"url,omitempty"` // required
}

type SalesChannelLanguage

type SalesChannelLanguage struct {
	Language       *Language     `json:"language,omitempty"`
	LanguageId     string        `json:"languageId,omitempty"` // required
	SalesChannel   *SalesChannel `json:"salesChannel,omitempty"`
	SalesChannelId string        `json:"salesChannelId,omitempty"` // required
}

type SalesChannelPaymentMethod

type SalesChannelPaymentMethod struct {
	PaymentMethod   *PaymentMethod `json:"paymentMethod,omitempty"`
	PaymentMethodId string         `json:"paymentMethodId,omitempty"` // required
	SalesChannel    *SalesChannel  `json:"salesChannel,omitempty"`
	SalesChannelId  string         `json:"salesChannelId,omitempty"` // required
}

type SalesChannelShippingMethod

type SalesChannelShippingMethod struct {
	SalesChannel     *SalesChannel   `json:"salesChannel,omitempty"`
	SalesChannelId   string          `json:"salesChannelId,omitempty"` // required
	ShippingMethod   *ShippingMethod `json:"shippingMethod,omitempty"`
	ShippingMethodId string          `json:"shippingMethodId,omitempty"` // required
}

type SalesChannelTranslation

type SalesChannelTranslation struct {
	CreatedAt           *time.Time    `json:"createdAt,omitempty"`
	CustomFields        interface{}   `json:"customFields,omitempty"`
	HomeEnabled         bool          `json:"homeEnabled"`
	HomeKeywords        string        `json:"homeKeywords,omitempty"`
	HomeMetaDescription string        `json:"homeMetaDescription,omitempty"`
	HomeMetaTitle       string        `json:"homeMetaTitle,omitempty"`
	HomeName            string        `json:"homeName,omitempty"`
	HomeSlotConfig      interface{}   `json:"homeSlotConfig,omitempty"`
	Language            *Language     `json:"language,omitempty"`
	LanguageId          string        `json:"languageId,omitempty"`
	Name                string        `json:"name,omitempty"`
	SalesChannel        *SalesChannel `json:"salesChannel,omitempty"`
	SalesChannelId      string        `json:"salesChannelId,omitempty"`
	UpdatedAt           *time.Time    `json:"updatedAt,omitempty"`
}

type SalesChannelType

type SalesChannelType struct {
	CoverUrl        string                        `json:"coverUrl,omitempty"`
	CreatedAt       *time.Time                    `json:"createdAt,omitempty"`
	CustomFields    interface{}                   `json:"customFields,omitempty"`
	Description     string                        `json:"description,omitempty"`
	DescriptionLong string                        `json:"descriptionLong,omitempty"`
	IconName        string                        `json:"iconName,omitempty"`
	Id              string                        `json:"id,omitempty"`
	Manufacturer    string                        `json:"manufacturer,omitempty"`
	Name            string                        `json:"name,omitempty"` // required
	SalesChannels   []SalesChannel                `json:"salesChannels,omitempty"`
	ScreenshotUrls  interface{}                   `json:"screenshotUrls,omitempty"`
	Translated      interface{}                   `json:"translated,omitempty"`
	Translations    []SalesChannelTypeTranslation `json:"translations,omitempty"`
	UpdatedAt       *time.Time                    `json:"updatedAt,omitempty"`
}

type SalesChannelTypeTranslation

type SalesChannelTypeTranslation struct {
	CreatedAt          *time.Time        `json:"createdAt,omitempty"`
	CustomFields       interface{}       `json:"customFields,omitempty"`
	Description        string            `json:"description,omitempty"`
	DescriptionLong    string            `json:"descriptionLong,omitempty"`
	Language           *Language         `json:"language,omitempty"`
	LanguageId         string            `json:"languageId,omitempty"`
	Manufacturer       string            `json:"manufacturer,omitempty"`
	Name               string            `json:"name,omitempty"`
	SalesChannelType   *SalesChannelType `json:"salesChannelType,omitempty"`
	SalesChannelTypeId string            `json:"salesChannelTypeId,omitempty"`
	UpdatedAt          *time.Time        `json:"updatedAt,omitempty"`
}

type Salutation

type Salutation struct {
	CreatedAt            *time.Time              `json:"createdAt,omitempty"`
	CustomerAddresses    []CustomerAddress       `json:"customerAddresses,omitempty"`
	Customers            []Customer              `json:"customers,omitempty"`
	CustomFields         interface{}             `json:"customFields,omitempty"`
	DisplayName          string                  `json:"displayName,omitempty"` // required
	Id                   string                  `json:"id,omitempty"`
	LetterName           string                  `json:"letterName,omitempty"` // required
	NewsletterRecipients []NewsletterRecipient   `json:"newsletterRecipients,omitempty"`
	OrderAddresses       []OrderAddress          `json:"orderAddresses,omitempty"`
	OrderCustomers       []OrderCustomer         `json:"orderCustomers,omitempty"`
	SalutationKey        string                  `json:"salutationKey,omitempty"` // required
	Translated           interface{}             `json:"translated,omitempty"`
	Translations         []SalutationTranslation `json:"translations,omitempty"`
	UpdatedAt            *time.Time              `json:"updatedAt,omitempty"`
}

type SalutationTranslation

type SalutationTranslation struct {
	CreatedAt    *time.Time  `json:"createdAt,omitempty"`
	CustomFields interface{} `json:"customFields,omitempty"`
	DisplayName  string      `json:"displayName,omitempty"`
	Language     *Language   `json:"language,omitempty"`
	LanguageId   string      `json:"languageId,omitempty"`
	LetterName   string      `json:"letterName,omitempty"`
	Salutation   *Salutation `json:"salutation,omitempty"`
	SalutationId string      `json:"salutationId,omitempty"`
	UpdatedAt    *time.Time  `json:"updatedAt,omitempty"`
}

type ScheduledTask

type ScheduledTask struct {
	CreatedAt          *time.Time    `json:"createdAt,omitempty"`
	DeadMessages       []DeadMessage `json:"deadMessages,omitempty"`
	Id                 string        `json:"id,omitempty"`
	LastExecutionTime  *time.Time    `json:"lastExecutionTime,omitempty"`
	Name               string        `json:"name,omitempty"` // required
	NextExecutionTime  *time.Time    `json:"nextExecutionTime,omitempty"`
	RunInterval        int64         `json:"runInterval,omitempty"`        // required
	ScheduledTaskClass string        `json:"scheduledTaskClass,omitempty"` // required
	Status             string        `json:"status,omitempty"`             // required
	UpdatedAt          *time.Time    `json:"updatedAt,omitempty"`
}

type Script

type Script struct {
	Active    bool       `json:"active"` // required
	App       *App       `json:"app,omitempty"`
	AppId     string     `json:"appId,omitempty"`
	CreatedAt *time.Time `json:"createdAt,omitempty"`
	Hook      string     `json:"hook,omitempty"` // required
	Id        string     `json:"id,omitempty"`
	Name      string     `json:"name,omitempty"`   // required
	Script    string     `json:"script,omitempty"` // required
	UpdatedAt *time.Time `json:"updatedAt,omitempty"`
}

type SeoUrl

type SeoUrl struct {
	CreatedAt      *time.Time    `json:"createdAt,omitempty"`
	CustomFields   interface{}   `json:"customFields,omitempty"`
	ForeignKey     string        `json:"foreignKey,omitempty"` // required
	Id             string        `json:"id,omitempty"`
	IsCanonical    bool          `json:"isCanonical"`
	IsDeleted      bool          `json:"isDeleted"`
	IsModified     bool          `json:"isModified"`
	Language       *Language     `json:"language,omitempty"`
	LanguageId     string        `json:"languageId,omitempty"` // required
	PathInfo       string        `json:"pathInfo,omitempty"`   // required
	RouteName      string        `json:"routeName,omitempty"`  // required
	SalesChannel   *SalesChannel `json:"salesChannel,omitempty"`
	SalesChannelId string        `json:"salesChannelId,omitempty"`
	SeoPathInfo    string        `json:"seoPathInfo,omitempty"` // required
	UpdatedAt      *time.Time    `json:"updatedAt,omitempty"`
	Url            string        `json:"url,omitempty"`
}

type SeoUrlTemplate

type SeoUrlTemplate struct {
	CreatedAt      *time.Time    `json:"createdAt,omitempty"`
	CustomFields   interface{}   `json:"customFields,omitempty"`
	EntityName     string        `json:"entityName,omitempty"` // required
	Id             string        `json:"id,omitempty"`
	IsValid        bool          `json:"isValid"`
	RouteName      string        `json:"routeName,omitempty"` // required
	SalesChannel   *SalesChannel `json:"salesChannel,omitempty"`
	SalesChannelId string        `json:"salesChannelId,omitempty"`
	Template       string        `json:"template,omitempty"`
	UpdatedAt      *time.Time    `json:"updatedAt,omitempty"`
}

type ShippingCosts

type ShippingCosts struct {
	UnitPrice       float64         `json:"unitPrice,omitempty"`  // required
	TotalPrice      float64         `json:"totalPrice,omitempty"` // required
	Quantity        float64         `json:"quantity,omitempty"`   // required
	CalculatedTaxes interface{}     `json:"calculatedTaxes,omitempty"`
	TaxRules        interface{}     `json:"taxRules,omitempty"`
	ReferencePrice  float64         `json:"referencePrice,omitempty"` // required
	ListPrice       ListPrice       `json:"listPrice,omitempty"`
	RegulationPrice RegulationPrice `json:"regulationPrice,omitempty"`
}

type ShippingMethod

type ShippingMethod struct {
	Active                         bool                        `json:"active"`
	AvailabilityRule               *Rule                       `json:"availabilityRule,omitempty"`
	AvailabilityRuleId             string                      `json:"availabilityRuleId,omitempty"` // required
	CreatedAt                      *time.Time                  `json:"createdAt,omitempty"`
	CustomFields                   interface{}                 `json:"customFields,omitempty"`
	DeliveryTime                   *DeliveryTime               `json:"deliveryTime,omitempty"`
	DeliveryTimeId                 string                      `json:"deliveryTimeId,omitempty"` // required
	Description                    string                      `json:"description,omitempty"`
	Id                             string                      `json:"id,omitempty"`
	Media                          *Media                      `json:"media,omitempty"`
	MediaId                        string                      `json:"mediaId,omitempty"`
	Name                           string                      `json:"name,omitempty"` // required
	OrderDeliveries                []OrderDelivery             `json:"orderDeliveries,omitempty"`
	Prices                         []ShippingMethodPrice       `json:"prices,omitempty"`
	SalesChannelDefaultAssignments []SalesChannel              `json:"salesChannelDefaultAssignments,omitempty"`
	SalesChannels                  []SalesChannel              `json:"salesChannels,omitempty"`
	Tags                           []Tag                       `json:"tags,omitempty"`
	Tax                            *Tax                        `json:"tax,omitempty"`
	TaxId                          string                      `json:"taxId,omitempty"`
	TaxType                        string                      `json:"taxType,omitempty"` // required
	TrackingUrl                    string                      `json:"trackingUrl,omitempty"`
	Translated                     interface{}                 `json:"translated,omitempty"`
	Translations                   []ShippingMethodTranslation `json:"translations,omitempty"`
	UpdatedAt                      *time.Time                  `json:"updatedAt,omitempty"`
}

type ShippingMethodPrice

type ShippingMethodPrice struct {
	Calculation       float64         `json:"calculation,omitempty"`
	CalculationRule   *Rule           `json:"calculationRule,omitempty"`
	CalculationRuleId string          `json:"calculationRuleId,omitempty"`
	CreatedAt         *time.Time      `json:"createdAt,omitempty"`
	CurrencyPrice     interface{}     `json:"currencyPrice,omitempty"`
	CustomFields      interface{}     `json:"customFields,omitempty"`
	Id                string          `json:"id,omitempty"`
	QuantityEnd       float64         `json:"quantityEnd,omitempty"`
	QuantityStart     float64         `json:"quantityStart,omitempty"`
	Rule              *Rule           `json:"rule,omitempty"`
	RuleId            string          `json:"ruleId,omitempty"`
	ShippingMethod    *ShippingMethod `json:"shippingMethod,omitempty"`
	ShippingMethodId  string          `json:"shippingMethodId,omitempty"` // required
	UpdatedAt         *time.Time      `json:"updatedAt,omitempty"`
}

type ShippingMethodTag

type ShippingMethodTag struct {
	ShippingMethod   *ShippingMethod `json:"shippingMethod,omitempty"`
	ShippingMethodId string          `json:"shippingMethodId,omitempty"` // required
	Tag              *Tag            `json:"tag,omitempty"`
	TagId            string          `json:"tagId,omitempty"` // required
}

type ShippingMethodTranslation

type ShippingMethodTranslation struct {
	CreatedAt        *time.Time      `json:"createdAt,omitempty"`
	CustomFields     interface{}     `json:"customFields,omitempty"`
	Description      string          `json:"description,omitempty"`
	Language         *Language       `json:"language,omitempty"`
	LanguageId       string          `json:"languageId,omitempty"`
	Name             string          `json:"name,omitempty"`
	ShippingMethod   *ShippingMethod `json:"shippingMethod,omitempty"`
	ShippingMethodId string          `json:"shippingMethodId,omitempty"`
	TrackingUrl      string          `json:"trackingUrl,omitempty"`
	UpdatedAt        *time.Time      `json:"updatedAt,omitempty"`
}

type Snippet

type Snippet struct {
	Author         string      `json:"author,omitempty"` // required
	CreatedAt      *time.Time  `json:"createdAt,omitempty"`
	CustomFields   interface{} `json:"customFields,omitempty"`
	Id             string      `json:"id,omitempty"`
	Set            *SnippetSet `json:"set,omitempty"`
	SetId          string      `json:"setId,omitempty"`          // required
	TranslationKey string      `json:"translationKey,omitempty"` // required
	UpdatedAt      *time.Time  `json:"updatedAt,omitempty"`
	Value          string      `json:"value,omitempty"` // required
}

type SnippetSet

type SnippetSet struct {
	BaseFile            string               `json:"baseFile,omitempty"` // required
	CreatedAt           *time.Time           `json:"createdAt,omitempty"`
	CustomFields        interface{}          `json:"customFields,omitempty"`
	Id                  string               `json:"id,omitempty"`
	Iso                 string               `json:"iso,omitempty"`  // required
	Name                string               `json:"name,omitempty"` // required
	SalesChannelDomains []SalesChannelDomain `json:"salesChannelDomains,omitempty"`
	Snippets            []Snippet            `json:"snippets,omitempty"`
	UpdatedAt           *time.Time           `json:"updatedAt,omitempty"`
}

type StateMachine

type StateMachine struct {
	CreatedAt      *time.Time                `json:"createdAt,omitempty"`
	CustomFields   interface{}               `json:"customFields,omitempty"`
	HistoryEntries []StateMachineHistory     `json:"historyEntries,omitempty"`
	Id             string                    `json:"id,omitempty"`
	InitialStateId string                    `json:"initialStateId,omitempty"`
	Name           string                    `json:"name,omitempty"` // required
	States         []StateMachineState       `json:"states,omitempty"`
	TechnicalName  string                    `json:"technicalName,omitempty"` // required
	Transitions    []StateMachineTransition  `json:"transitions,omitempty"`
	Translated     interface{}               `json:"translated,omitempty"`
	Translations   []StateMachineTranslation `json:"translations,omitempty"`
	UpdatedAt      *time.Time                `json:"updatedAt,omitempty"`
}

type StateMachineHistory

type StateMachineHistory struct {
	CreatedAt             *time.Time         `json:"createdAt,omitempty"`
	EntityId              interface{}        `json:"entityId,omitempty"`    // required
	EntityName            string             `json:"entityName,omitempty"`  // required
	FromStateId           string             `json:"fromStateId,omitempty"` // required
	FromStateMachineState *StateMachineState `json:"fromStateMachineState,omitempty"`
	Id                    string             `json:"id,omitempty"`
	StateMachine          *StateMachine      `json:"stateMachine,omitempty"`
	StateMachineId        string             `json:"stateMachineId,omitempty"` // required
	ToStateId             string             `json:"toStateId,omitempty"`      // required
	ToStateMachineState   *StateMachineState `json:"toStateMachineState,omitempty"`
	TransitionActionName  string             `json:"transitionActionName,omitempty"`
	UpdatedAt             *time.Time         `json:"updatedAt,omitempty"`
	User                  *User              `json:"user,omitempty"`
	UserId                string             `json:"userId,omitempty"`
}

type StateMachineState

type StateMachineState struct {
	CreatedAt                      *time.Time                     `json:"createdAt,omitempty"`
	CustomFields                   interface{}                    `json:"customFields,omitempty"`
	FromStateMachineHistoryEntries []StateMachineHistory          `json:"fromStateMachineHistoryEntries,omitempty"`
	FromStateMachineTransitions    []StateMachineTransition       `json:"fromStateMachineTransitions,omitempty"`
	Id                             string                         `json:"id,omitempty"`
	Name                           string                         `json:"name,omitempty"` // required
	OrderDeliveries                []OrderDelivery                `json:"orderDeliveries,omitempty"`
	Orders                         []Order                        `json:"orders,omitempty"`
	OrderTransactions              []OrderTransaction             `json:"orderTransactions,omitempty"`
	StateMachine                   *StateMachine                  `json:"stateMachine,omitempty"`
	StateMachineId                 string                         `json:"stateMachineId,omitempty"` // required
	TechnicalName                  string                         `json:"technicalName,omitempty"`  // required
	ToStateMachineHistoryEntries   []StateMachineHistory          `json:"toStateMachineHistoryEntries,omitempty"`
	ToStateMachineTransitions      []StateMachineTransition       `json:"toStateMachineTransitions,omitempty"`
	Translated                     interface{}                    `json:"translated,omitempty"`
	Translations                   []StateMachineStateTranslation `json:"translations,omitempty"`
	UpdatedAt                      *time.Time                     `json:"updatedAt,omitempty"`
}

type StateMachineStateTranslation

type StateMachineStateTranslation struct {
	CreatedAt           *time.Time         `json:"createdAt,omitempty"`
	CustomFields        interface{}        `json:"customFields,omitempty"`
	Language            *Language          `json:"language,omitempty"`
	LanguageId          string             `json:"languageId,omitempty"`
	Name                string             `json:"name,omitempty"`
	StateMachineState   *StateMachineState `json:"stateMachineState,omitempty"`
	StateMachineStateId string             `json:"stateMachineStateId,omitempty"`
	UpdatedAt           *time.Time         `json:"updatedAt,omitempty"`
}

type StateMachineTransition

type StateMachineTransition struct {
	ActionName            string             `json:"actionName,omitempty"` // required
	CreatedAt             *time.Time         `json:"createdAt,omitempty"`
	CustomFields          interface{}        `json:"customFields,omitempty"`
	FromStateId           string             `json:"fromStateId,omitempty"` // required
	FromStateMachineState *StateMachineState `json:"fromStateMachineState,omitempty"`
	Id                    string             `json:"id,omitempty"`
	StateMachine          *StateMachine      `json:"stateMachine,omitempty"`
	StateMachineId        string             `json:"stateMachineId,omitempty"` // required
	ToStateId             string             `json:"toStateId,omitempty"`      // required
	ToStateMachineState   *StateMachineState `json:"toStateMachineState,omitempty"`
	UpdatedAt             *time.Time         `json:"updatedAt,omitempty"`
}

type StateMachineTranslation

type StateMachineTranslation struct {
	CreatedAt      *time.Time    `json:"createdAt,omitempty"`
	CustomFields   interface{}   `json:"customFields,omitempty"`
	Language       *Language     `json:"language,omitempty"`
	LanguageId     string        `json:"languageId,omitempty"`
	Name           string        `json:"name,omitempty"`
	StateMachine   *StateMachine `json:"stateMachine,omitempty"`
	StateMachineId string        `json:"stateMachineId,omitempty"`
	UpdatedAt      *time.Time    `json:"updatedAt,omitempty"`
}

type SystemConfig

type SystemConfig struct {
	ConfigurationKey   string        `json:"configurationKey,omitempty"`   // required
	ConfigurationValue interface{}   `json:"configurationValue,omitempty"` // required
	CreatedAt          *time.Time    `json:"createdAt,omitempty"`
	Id                 string        `json:"id,omitempty"`
	SalesChannel       *SalesChannel `json:"salesChannel,omitempty"`
	SalesChannelId     string        `json:"salesChannelId,omitempty"`
	UpdatedAt          *time.Time    `json:"updatedAt,omitempty"`
}

type Tag

type Tag struct {
	Categories           []Category            `json:"categories,omitempty"`
	CreatedAt            *time.Time            `json:"createdAt,omitempty"`
	Customers            []Customer            `json:"customers,omitempty"`
	Id                   string                `json:"id,omitempty"`
	LandingPages         []LandingPage         `json:"landingPages,omitempty"`
	Media                []Media               `json:"media,omitempty"`
	Name                 string                `json:"name,omitempty"` // required
	NewsletterRecipients []NewsletterRecipient `json:"newsletterRecipients,omitempty"`
	Orders               []Order               `json:"orders,omitempty"`
	Products             []Product             `json:"products,omitempty"`
	ShippingMethods      []ShippingMethod      `json:"shippingMethods,omitempty"`
	UpdatedAt            *time.Time            `json:"updatedAt,omitempty"`
}

type Tax

type Tax struct {
	CreatedAt       *time.Time       `json:"createdAt,omitempty"`
	CustomFields    interface{}      `json:"customFields,omitempty"`
	Id              string           `json:"id,omitempty"`
	Name            string           `json:"name,omitempty"`     // required
	Position        float64          `json:"position,omitempty"` // required
	Products        []Product        `json:"products,omitempty"`
	Rules           []TaxRule        `json:"rules,omitempty"`
	ShippingMethods []ShippingMethod `json:"shippingMethods,omitempty"`
	TaxRate         float64          `json:"taxRate,omitempty"` // required
	UpdatedAt       *time.Time       `json:"updatedAt,omitempty"`
}

type TaxRule

type TaxRule struct {
	Country       *Country     `json:"country,omitempty"`
	CountryId     string       `json:"countryId,omitempty"` // required
	CreatedAt     *time.Time   `json:"createdAt,omitempty"`
	Data          interface{}  `json:"data,omitempty"`
	Id            string       `json:"id,omitempty"`
	Tax           *Tax         `json:"tax,omitempty"`
	TaxId         string       `json:"taxId,omitempty"`
	TaxRate       float64      `json:"taxRate,omitempty"`       // required
	TaxRuleTypeId string       `json:"taxRuleTypeId,omitempty"` // required
	Type          *TaxRuleType `json:"type,omitempty"`
	UpdatedAt     *time.Time   `json:"updatedAt,omitempty"`
}

type TaxRuleType

type TaxRuleType struct {
	CreatedAt     *time.Time               `json:"createdAt,omitempty"`
	Id            string                   `json:"id,omitempty"`
	Position      int64                    `json:"position,omitempty"` // required
	Rules         []TaxRule                `json:"rules,omitempty"`
	TechnicalName string                   `json:"technicalName,omitempty"` // required
	Translated    interface{}              `json:"translated,omitempty"`
	Translations  []TaxRuleTypeTranslation `json:"translations,omitempty"`
	TypeName      string                   `json:"typeName,omitempty"` // required
	UpdatedAt     *time.Time               `json:"updatedAt,omitempty"`
}

type TaxRuleTypeTranslation

type TaxRuleTypeTranslation struct {
	CreatedAt     *time.Time   `json:"createdAt,omitempty"`
	Language      *Language    `json:"language,omitempty"`
	LanguageId    string       `json:"languageId,omitempty"`
	TaxRuleType   *TaxRuleType `json:"taxRuleType,omitempty"`
	TaxRuleTypeId string       `json:"taxRuleTypeId,omitempty"`
	TypeName      string       `json:"typeName,omitempty"`
	UpdatedAt     *time.Time   `json:"updatedAt,omitempty"`
}

type Theme

type Theme struct {
	Active         bool               `json:"active"`           // required
	Author         string             `json:"author,omitempty"` // required
	BaseConfig     interface{}        `json:"baseConfig,omitempty"`
	ChildThemes    []Theme            `json:"childThemes,omitempty"`
	ConfigValues   interface{}        `json:"configValues,omitempty"`
	CreatedAt      *time.Time         `json:"createdAt,omitempty"`
	CustomFields   interface{}        `json:"customFields,omitempty"`
	Description    string             `json:"description,omitempty"`
	HelpTexts      interface{}        `json:"helpTexts,omitempty"`
	Id             string             `json:"id,omitempty"`
	Labels         interface{}        `json:"labels,omitempty"`
	Media          []Media            `json:"media,omitempty"`
	Name           string             `json:"name,omitempty"` // required
	ParentThemeId  string             `json:"parentThemeId,omitempty"`
	PreviewMedia   *Media             `json:"previewMedia,omitempty"`
	PreviewMediaId string             `json:"previewMediaId,omitempty"`
	SalesChannels  []SalesChannel     `json:"salesChannels,omitempty"`
	TechnicalName  string             `json:"technicalName,omitempty"`
	Translated     interface{}        `json:"translated,omitempty"`
	Translations   []ThemeTranslation `json:"translations,omitempty"`
	UpdatedAt      *time.Time         `json:"updatedAt,omitempty"`
}

type ThemeChild

type ThemeChild struct {
	Id       string `json:"id,omitempty"`
	ParentId string `json:"parentId,omitempty"` // required
	ChildId  string `json:"childId,omitempty"`  // required
	Parent   *Theme `json:"parentTheme,omitempty"`
	Child    *Theme `json:"childTheme,omitempty"`
}

type ThemeMedia

type ThemeMedia struct {
	Media   *Media `json:"media,omitempty"`
	MediaId string `json:"mediaId,omitempty"` // required
	Theme   *Theme `json:"theme,omitempty"`
	ThemeId string `json:"themeId,omitempty"` // required
}

type ThemeSalesChannel

type ThemeSalesChannel struct {
	SalesChannel   *SalesChannel `json:"salesChannel,omitempty"`
	SalesChannelId string        `json:"salesChannelId,omitempty"` // required
	Theme          *Theme        `json:"theme,omitempty"`
	ThemeId        string        `json:"themeId,omitempty"` // required
}

type ThemeTranslation

type ThemeTranslation struct {
	CreatedAt    *time.Time  `json:"createdAt,omitempty"`
	CustomFields interface{} `json:"customFields,omitempty"`
	Description  string      `json:"description,omitempty"`
	HelpTexts    interface{} `json:"helpTexts,omitempty"`
	Labels       interface{} `json:"labels,omitempty"`
	Language     *Language   `json:"language,omitempty"`
	LanguageId   string      `json:"languageId,omitempty"`
	Theme        *Theme      `json:"theme,omitempty"`
	ThemeId      string      `json:"themeId,omitempty"`
	UpdatedAt    *time.Time  `json:"updatedAt,omitempty"`
}

type Unit

type Unit struct {
	CreatedAt    *time.Time        `json:"createdAt,omitempty"`
	CustomFields interface{}       `json:"customFields,omitempty"`
	Id           string            `json:"id,omitempty"`
	Name         string            `json:"name,omitempty"` // required
	Products     []Product         `json:"products,omitempty"`
	ShortCode    string            `json:"shortCode,omitempty"` // required
	Translated   interface{}       `json:"translated,omitempty"`
	Translations []UnitTranslation `json:"translations,omitempty"`
	UpdatedAt    *time.Time        `json:"updatedAt,omitempty"`
}

type UnitTranslation

type UnitTranslation struct {
	CreatedAt    *time.Time  `json:"createdAt,omitempty"`
	CustomFields interface{} `json:"customFields,omitempty"`
	Language     *Language   `json:"language,omitempty"`
	LanguageId   string      `json:"languageId,omitempty"`
	Name         string      `json:"name,omitempty"`
	ShortCode    string      `json:"shortCode,omitempty"`
	Unit         *Unit       `json:"unit,omitempty"`
	UnitId       string      `json:"unitId,omitempty"`
	UpdatedAt    *time.Time  `json:"updatedAt,omitempty"`
}

type User

type User struct {
	AccessKeys                 []UserAccessKey       `json:"accessKeys,omitempty"`
	AclRoles                   []AclRole             `json:"aclRoles,omitempty"`
	Active                     bool                  `json:"active"`
	Admin                      bool                  `json:"admin"`
	AvatarId                   string                `json:"avatarId,omitempty"`
	AvatarMedia                *Media                `json:"avatarMedia,omitempty"`
	Configs                    []UserConfig          `json:"configs,omitempty"`
	CreatedAt                  *time.Time            `json:"createdAt,omitempty"`
	CreatedNotifications       []Notification        `json:"createdNotifications,omitempty"`
	CreatedOrders              []Order               `json:"createdOrders,omitempty"`
	CustomFields               interface{}           `json:"customFields,omitempty"`
	Email                      string                `json:"email,omitempty"`     // required
	FirstName                  string                `json:"firstName,omitempty"` // required
	Id                         string                `json:"id,omitempty"`
	ImportExportLogEntries     []ImportExportLog     `json:"importExportLogEntries,omitempty"`
	LastName                   string                `json:"lastName,omitempty"` // required
	LastUpdatedPasswordAt      *time.Time            `json:"lastUpdatedPasswordAt,omitempty"`
	Locale                     *Locale               `json:"locale,omitempty"`
	LocaleId                   string                `json:"localeId,omitempty"` // required
	Media                      []Media               `json:"media,omitempty"`
	Password                   interface{}           `json:"password,omitempty"`
	RecoveryUser               *UserRecovery         `json:"recoveryUser,omitempty"`
	StateMachineHistoryEntries []StateMachineHistory `json:"stateMachineHistoryEntries,omitempty"`
	StoreToken                 string                `json:"storeToken,omitempty"`
	TimeZone                   string                `json:"timeZone,omitempty"` // required
	Title                      string                `json:"title,omitempty"`
	UpdatedAt                  *time.Time            `json:"updatedAt,omitempty"`
	UpdatedOrders              []Order               `json:"updatedOrders,omitempty"`
	Username                   string                `json:"username,omitempty"` // required
}

type UserAccessKey

type UserAccessKey struct {
	AccessKey       string      `json:"accessKey,omitempty"` // required
	CreatedAt       *time.Time  `json:"createdAt,omitempty"`
	CustomFields    interface{} `json:"customFields,omitempty"`
	Id              string      `json:"id,omitempty"`
	LastUsageAt     *time.Time  `json:"lastUsageAt,omitempty"`
	SecretAccessKey interface{} `json:"secretAccessKey,omitempty"` // required
	UpdatedAt       *time.Time  `json:"updatedAt,omitempty"`
	User            *User       `json:"user,omitempty"`
	UserId          string      `json:"userId,omitempty"` // required
	WriteAccess     bool        `json:"writeAccess"`
}

type UserConfig

type UserConfig struct {
	CreatedAt *time.Time  `json:"createdAt,omitempty"`
	Id        string      `json:"id,omitempty"`
	Key       string      `json:"key,omitempty"` // required
	UpdatedAt *time.Time  `json:"updatedAt,omitempty"`
	User      *User       `json:"user,omitempty"`
	UserId    string      `json:"userId,omitempty"` // required
	Value     interface{} `json:"value,omitempty"`
}

type UserRecovery

type UserRecovery struct {
	CreatedAt *time.Time `json:"createdAt,omitempty"`
	Hash      string     `json:"hash,omitempty"` // required
	Id        string     `json:"id,omitempty"`
	UpdatedAt *time.Time `json:"updatedAt,omitempty"`
	User      *User      `json:"user,omitempty"`
	UserId    string     `json:"userId,omitempty"` // required
}

type Version

type Version struct {
	Commits   []VersionCommit `json:"commits,omitempty"`
	CreatedAt *time.Time      `json:"createdAt,omitempty"`
	Id        string          `json:"id,omitempty"`
	Name      string          `json:"name,omitempty"`
	UpdatedAt *time.Time      `json:"updatedAt,omitempty"`
}

type VersionCommit

type VersionCommit struct {
	AutoIncrement float64             `json:"autoIncrement,omitempty"`
	CreatedAt     *time.Time          `json:"createdAt,omitempty"`
	Data          []VersionCommitData `json:"data,omitempty"`
	Id            string              `json:"id,omitempty"`
	IntegrationId string              `json:"integrationId,omitempty"`
	IsMerge       bool                `json:"isMerge"`
	Message       string              `json:"message,omitempty"`
	UpdatedAt     *time.Time          `json:"updatedAt,omitempty"`
	UserId        string              `json:"userId,omitempty"`
	Version       *Version            `json:"version,omitempty"`
	VersionId     string              `json:"versionId,omitempty"`
}

type VersionCommitData

type VersionCommitData struct {
	Action          string         `json:"action,omitempty"`
	AutoIncrement   float64        `json:"autoIncrement,omitempty"`
	Commit          *VersionCommit `json:"commit,omitempty"`
	CreatedAt       *time.Time     `json:"createdAt,omitempty"`
	EntityId        interface{}    `json:"entityId,omitempty"`
	EntityName      string         `json:"entityName,omitempty"`
	Id              string         `json:"id,omitempty"`
	IntegrationId   string         `json:"integrationId,omitempty"`
	Payload         interface{}    `json:"payload,omitempty"`
	UpdatedAt       *time.Time     `json:"updatedAt,omitempty"`
	UserId          string         `json:"userId,omitempty"`
	VersionCommitId string         `json:"versionCommitId,omitempty"`
}

type Webhook

type Webhook struct {
	Active     bool       `json:"active"`
	App        *App       `json:"app,omitempty"`
	AppId      string     `json:"appId,omitempty"`
	CreatedAt  *time.Time `json:"createdAt,omitempty"`
	ErrorCount int64      `json:"errorCount,omitempty"` // required
	EventName  string     `json:"eventName,omitempty"`  // required
	Id         string     `json:"id,omitempty"`
	Name       string     `json:"name,omitempty"` // required
	UpdatedAt  *time.Time `json:"updatedAt,omitempty"`
	Url        string     `json:"url,omitempty"` // required
}

type WebhookEventLog

type WebhookEventLog struct {
	AppName                  string      `json:"appName,omitempty"`
	AppVersion               string      `json:"appVersion,omitempty"`
	CreatedAt                *time.Time  `json:"createdAt,omitempty"`
	CustomFields             interface{} `json:"customFields,omitempty"`
	DeliveryStatus           string      `json:"deliveryStatus,omitempty"` // required
	EventName                string      `json:"eventName,omitempty"`      // required
	Id                       string      `json:"id,omitempty"`
	ProcessingTime           float64     `json:"processingTime,omitempty"`
	RequestContent           interface{} `json:"requestContent,omitempty"`
	ResponseContent          interface{} `json:"responseContent,omitempty"`
	ResponseReasonPhrase     string      `json:"responseReasonPhrase,omitempty"`
	ResponseStatusCode       float64     `json:"responseStatusCode,omitempty"`
	SerializedWebhookMessage interface{} `json:"serializedWebhookMessage,omitempty"`
	Timestamp                float64     `json:"timestamp,omitempty"`
	UpdatedAt                *time.Time  `json:"updatedAt,omitempty"`
	Url                      string      `json:"url,omitempty"`         // required
	WebhookName              string      `json:"webhookName,omitempty"` // required
}

Source Files

Jump to

Keyboard shortcuts

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