@shopware/api-client
Version:
Shopware client for API connection.
1,790 lines (1,788 loc) • 3.17 MB
TypeScript
import * as hookable from 'hookable';
import { FetchOptions, ResponseType, FetchResponse, FetchContext } from 'ofetch';
/**
* Source: https://github.com/shopware/shopware/blob/trunk/src/Core/PlatformRequest.php#L16
*/
type RequestHeaderName = "sw-context-token" | "sw-access-key" | "sw-language-id" | "sw-currency-id" | "sw-inheritance" | "sw-version-id" | "sw-include-seo-urls" | "sw-skip-trigger-flow" | "sw-app-integration-id" | "indexing-behavior" | "indexing-skip";
type RequestHeader = "content-type" | "accept";
type LiteralUnion<T extends U, U = string> = T | (U & {
_x?: never;
});
type ClientHeaders = Partial<Record<LiteralUnion<RequestHeaderName | RequestHeader>, string>>;
type ClientHeadersProxy = ClientHeaders & {
/**
* Set default headers for the client.
* Default headers are added to every request.
* If the header value is falsy, it will be removed from the headers.
*
* @example
* ```ts
* apiClient.defaultHeaders.apply({
* "sw-language-id": "my-language-id",
* });
* ```
*/
readonly apply: (headers: ClientHeaders) => void;
};
/**
* This file is auto-generated. Do not make direct changes to the file.
* Instead override it in your shopware.d.ts file.
*
* Shopware API version: 6.6.10.0
*
*/
type GenericRecord$1 =
| never
| null
| string
| string[]
| number
| {
[key: string]: GenericRecord$1;
};
type components$1 = {
schemas: Schemas$1;
};
type Schemas$1 = {
AbstractDynamicPageOpenedPayload: {
/** @default true */
opened?: boolean;
/** The id of the current dynamic page */
pageId: string;
/** The position of the dynamic page in the list of dynamic pages */
position?: number;
/** The type of the current dynamic page */
type: string;
};
AccountNewsletterRecipient: {
/** @enum {string} */
apiAlias: "account_newsletter_recipient";
/** @enum {string} */
status: "undefined" | "notSet" | "direct" | "optIn" | "optOut";
};
AclRole: {
/** Format: date-time */
readonly createdAt?: string;
id?: string;
/** Format: date-time */
readonly updatedAt?: string;
};
AdvancedSearchAction: {
/** Format: date-time */
readonly createdAt?: string;
id?: string;
/** Format: date-time */
readonly updatedAt?: string;
};
AdvancedSearchActionSearchTerm: {
/** Format: date-time */
readonly createdAt?: string;
id?: string;
/** Format: date-time */
readonly updatedAt?: string;
};
AdvancedSearchBoosting: {
/** Format: date-time */
readonly createdAt?: string;
id?: string;
/** Format: date-time */
readonly updatedAt?: string;
};
AdvancedSearchConfig: {
/** Format: date-time */
readonly createdAt?: string;
hitCount?: {
category?: {
/** Format: int64 */
maxSearchCount?: number;
/** Format: int64 */
maxSuggestCount?: number;
};
product?: {
/** Format: int64 */
maxSearchCount?: number;
/** Format: int64 */
maxSuggestCount?: number;
};
product_manufacturer?: {
/** Format: int64 */
maxSearchCount?: number;
/** Format: int64 */
maxSuggestCount?: number;
};
};
id?: string;
/** Format: date-time */
readonly updatedAt?: string;
};
AdvancedSearchConfigField: {
/** Format: date-time */
readonly createdAt?: string;
id?: string;
/** Format: date-time */
readonly updatedAt?: string;
};
AdvancedSearchEntityStream: {
/** Format: date-time */
readonly createdAt?: string;
id?: string;
/** Format: date-time */
readonly updatedAt?: string;
};
AdvancedSearchEntityStreamFilter: {
/** Format: date-time */
readonly createdAt?: string;
id?: string;
/** Format: date-time */
readonly updatedAt?: string;
};
AdvancedSearchSynonym: {
/** Format: date-time */
readonly createdAt?: string;
id?: string;
/** Format: date-time */
readonly updatedAt?: string;
};
Aggregation:
| components$1["schemas"]["AggregationMetrics"]
| (components$1["schemas"]["AggregationEntity"] &
components$1["schemas"]["SubAggregations"])
| (components$1["schemas"]["AggregationFilter"] &
components$1["schemas"]["SubAggregations"])
| (components$1["schemas"]["AggregationTerms"] &
components$1["schemas"]["SubAggregations"])
| (components$1["schemas"]["AggregationHistogram"] &
components$1["schemas"]["SubAggregations"])
| (components$1["schemas"]["AggregationRange"] &
components$1["schemas"]["SubAggregations"]);
AggregationEntity: {
/** The entity definition e.g "product_manufacturer". */
definition: string;
/** The field you want to aggregate over. */
field: string;
/** Give your aggregation an identifier, so you can find it easier */
name: string;
/**
* The type of aggregation
* @enum {string}
*/
type: "entity";
};
AggregationFilter: {
filter: components$1["schemas"]["Filters"][];
/** Give your aggregation an identifier, so you can find it easier */
name: string;
/**
* The type of aggregation
* @enum {string}
*/
type: "filter";
};
AggregationHistogram: {
/** The field you want to aggregate over. */
field: string;
/** The format of the histogram */
format?: string;
/** The interval of the histogram */
interval?: number;
/** Give your aggregation an identifier, so you can find it easier */
name: string;
/** The timezone of the histogram */
timeZone?: string;
/**
* The type of aggregation
* @enum {string}
*/
type: "histogram";
};
AggregationMetrics: {
field: string;
name: string;
/** @enum {string} */
type: "avg" | "count" | "max" | "min" | "stats" | "sum";
};
AggregationRange: {
/** The field you want to aggregate over. */
field: string;
/** Give your aggregation an identifier, so you can find it easier */
name: string;
/** The ranges of the aggregation */
ranges: (
| {
/** The lower bound of the range */
from: number;
/** The upper bound of the range */
to: number;
}
| {
/** The lower bound of the range */
from: string;
}
| {
/** The upper bound of the range */
to: string;
}
)[];
/**
* The type of aggregation
* @enum {string}
*/
type: "range";
};
AggregationTerms: {
/** The field you want to aggregate over. */
field: string;
/** The number of terms to return */
limit?: number;
/** Give your aggregation an identifier, so you can find it easier */
name: string;
/** Sorting the aggregation result. */
sort?: components$1["schemas"]["Sort"][];
/**
* The type of aggregation
* @enum {string}
*/
type: "terms";
};
App: {
/** Format: date-time */
readonly createdAt?: string;
id?: string;
/** Format: date-time */
readonly updatedAt?: string;
};
AppActionButton: {
/** Format: date-time */
readonly createdAt?: string;
id?: string;
/** Format: date-time */
readonly updatedAt?: string;
};
AppAdministrationSnippet: {
appId: string;
/** Format: date-time */
readonly createdAt?: string;
id?: string;
localeId: string;
/** Format: date-time */
readonly updatedAt?: string;
value: string;
};
AppCmsBlock: {
/** Format: date-time */
readonly createdAt?: string;
id?: string;
/** Format: date-time */
readonly updatedAt?: string;
};
AppFlowAction: {
/** Format: date-time */
readonly createdAt?: string;
id?: string;
/** Format: date-time */
readonly updatedAt?: string;
};
AppFlowEvent: {
/** Format: date-time */
readonly createdAt?: string;
id?: string;
/** Format: date-time */
readonly updatedAt?: string;
};
AppPaymentMethod: {
/** Format: date-time */
readonly createdAt?: string;
id?: string;
/** Format: date-time */
readonly updatedAt?: string;
};
AppScriptCondition: {
/** Format: date-time */
readonly createdAt?: string;
id?: string;
/** Format: date-time */
readonly updatedAt?: string;
};
AppShippingMethod: {
/** Format: date-time */
readonly createdAt?: string;
id?: string;
/** Format: date-time */
readonly updatedAt?: string;
};
AppTemplate: {
/** Format: date-time */
readonly createdAt?: string;
id?: string;
/** Format: date-time */
readonly updatedAt?: string;
};
AppointmentBasicSettingResponse: {
/** The API alias of the appointment basic setting */
apiAlias?: string;
/** The name of the appointment */
appointmentName?: string;
/**
* The type of attendee restriction
* @enum {string}
*/
attendeeRestrictionType?: "open" | "customer" | "rules";
/** The booking link */
bookingLink?: string | null;
/**
* Indicates if appointments can be booked
* @default false
*/
canBookAppointment?: boolean;
/**
* Indicates if request emails can be sent
* @default false
*/
canSendRequestEmail?: boolean;
/**
* The mode of the interaction
* @enum {string}
*/
mode?: "guided" | "self";
/** The name of the sales channel */
salesChannelName?: string;
/**
* The video and audio settings
* @enum {string}
*/
videoAudioSettings?: "none" | "both" | "audio-only";
};
ApprovalRule: {
active?: boolean;
businessPartnerCustomerId?: string;
conditions?: {
type?: string;
value?: string;
}[];
description?: string;
/** Format: uuid */
id?: string;
name?: string;
priority?: number;
};
Association: {
[key: string]: components$1["schemas"]["Association"];
};
Associations: {
[key: string]: components$1["schemas"]["Criteria"];
};
AttendeeProductCollectionLastSeenResponse: {
collection?: {
lastSeen?: string[];
};
};
AttendeeProductCollectionResponse: {
collection?:
| {
liked?: string[];
}
| {
disliked?: string[];
};
};
AttendeeRespondInvitationResponse: {
/**
* The invitation status that client responded to
* @enum {string}
*/
answer?: "accepted" | "maybe" | "declined";
appointment?: {
/**
* Format: date-time
* The time the client can access the appointment
*/
accessibleFrom?: string;
/**
* Format: date-time
* The time the appointment will be closed, the client can not access
*/
accessibleTo?: string;
/** The appointment id */
id?: string;
/** The appointment status */
status?: ("started" | "ended") | null;
};
};
B2bBusinessPartner: {
/** Format: date-time */
readonly createdAt?: string;
customFields?: GenericRecord$1;
id?: string;
/** Format: date-time */
readonly updatedAt?: string;
};
B2bComponentsApprovalRule: {
affectedRole?: components$1["schemas"]["B2bComponentsRole"];
affectedRoleId?: string;
/** Format: date-time */
readonly createdAt?: string;
id?: string;
reviewerRole?: components$1["schemas"]["B2bComponentsRole"];
reviewerRoleId?: string;
/** Format: date-time */
readonly updatedAt?: string;
};
B2bComponentsApprovalRuleAppScriptCondition: {
/** Format: date-time */
readonly createdAt?: string;
id?: string;
/** Format: date-time */
readonly updatedAt?: string;
};
B2bComponentsPendingOrder: {
addresses?: components$1["schemas"]["B2bComponentsPendingOrderAddress"][];
/** Format: float */
readonly amountNet?: number;
/** Format: float */
readonly amountTotal?: number;
approvalRule?: components$1["schemas"]["B2bComponentsApprovalRule"];
approvalRuleId?: string;
billingAddress?: components$1["schemas"]["B2bComponentsPendingOrderAddress"];
billingAddressId: string;
country?: components$1["schemas"]["Country"];
countryId: string;
/** Format: date-time */
readonly createdAt?: string;
currency?: components$1["schemas"]["Currency"];
currencyId: string;
customer?: components$1["schemas"]["Customer"];
customerId: string;
customFields?: GenericRecord$1;
decidedBy?: components$1["schemas"]["B2bEmployee"];
decidedById?: string;
employee?: components$1["schemas"]["B2bEmployee"];
employeeId: string;
id?: string;
language?: components$1["schemas"]["Language"];
languageId: string;
order?: components$1["schemas"]["Order"];
orderId?: string;
/** Format: float */
originalPrice?: number;
paymentMethod?: components$1["schemas"]["PaymentMethod"];
paymentMethodId: string;
price?: {
calculatedTaxes?: GenericRecord$1;
/** Format: float */
netPrice: number;
/** Format: float */
positionPrice: number;
/** Format: float */
rawTotal: number;
taxRules?: GenericRecord$1;
taxStatus: string;
/** Format: float */
totalPrice: number;
};
reason?: string;
salesChannelId: string;
shippingMethod?: components$1["schemas"]["ShippingMethod"];
shippingMethodId: string;
stateId: string;
stateMachineState?: components$1["schemas"]["StateMachineState"];
readonly taxStatus?: string;
/** Format: date-time */
readonly updatedAt?: string;
};
B2bComponentsPendingOrderAddress: {
additionalAddressLine1?: string;
additionalAddressLine2?: string;
city: string;
company?: string;
country?: components$1["schemas"]["Country"];
countryId: string;
countryState?: components$1["schemas"]["CountryState"];
countryStateId?: string;
/** Format: date-time */
readonly createdAt?: string;
customFields?: GenericRecord$1;
department?: string;
firstName: string;
id: string;
lastName: string;
pendingOrder?: components$1["schemas"]["B2bComponentsPendingOrder"];
phoneNumber?: string;
salutation?: components$1["schemas"]["Salutation"];
street: string;
title?: string;
/** Format: date-time */
readonly updatedAt?: string;
vatId?: string;
zipcode?: string;
};
B2bComponentsRole: {
/** Format: date-time */
readonly createdAt?: string;
customFields?: GenericRecord$1;
/** Runtime field, cannot be used as part of the criteria. */
default?: boolean;
id: string;
name: string;
permissions?: GenericRecord$1[];
/** Format: date-time */
readonly updatedAt?: string;
};
B2bComponentsShoppingList: {
active?: boolean;
/** Format: date-time */
readonly createdAt?: string;
createdById?: string;
customer?: components$1["schemas"]["Customer"];
customerId: string;
customFields?: GenericRecord$1;
employee?: components$1["schemas"]["B2bEmployee"];
employeeId?: string;
id: string;
lineItems?: components$1["schemas"]["B2bComponentsShoppingListLineItem"][];
name?: string;
price?: components$1["schemas"]["Price"][];
salesChannelId: string;
/** Format: date-time */
readonly updatedAt?: string;
updatedById?: string;
};
B2bComponentsShoppingListJsonApi: components$1["schemas"]["resource"] & {
active?: boolean;
/** Format: date-time */
readonly createdAt?: string;
createdById?: string;
customerId: string;
customFields?: GenericRecord$1;
employeeId?: string;
id: string;
name?: string;
price?: components$1["schemas"]["Price"][];
relationships?: {
customer?: {
data?: {
/** @example 91ec1f9324753048c0096d036a694f86 */
id?: string;
/** @example customer */
type?: string;
};
links?: {
/**
* Format: uri-reference
* @example /b2b-components-shopping-list/23cb3bfda723e05b43cb25a427ee5a25/customer
*/
related?: string;
};
};
employee?: {
data?: {
/** @example fa5473530e4d1a5a1e1eb53d2fedb10c */
id?: string;
/** @example b2b_employee */
type?: string;
};
links?: {
/**
* Format: uri-reference
* @example /b2b-components-shopping-list/23cb3bfda723e05b43cb25a427ee5a25/employee
*/
related?: string;
};
};
lineItems?: {
data?: {
/** @example a042af1aa9f3853fe3cd7dabc065568f */
id?: string;
/** @example b2b_components_shopping_list_line_item */
type?: string;
}[];
links?: {
/**
* Format: uri-reference
* @example /b2b-components-shopping-list/23cb3bfda723e05b43cb25a427ee5a25/lineItems
*/
related?: string;
};
};
};
salesChannelId: string;
/** Format: date-time */
readonly updatedAt?: string;
updatedById?: string;
};
B2bComponentsShoppingListLineItem: {
/** Format: date-time */
readonly createdAt?: string;
id: string;
price?: components$1["schemas"]["Price"][];
product?: components$1["schemas"]["Product"];
productId?: string;
productVersionId?: string;
/** Format: int64 */
quantity: number;
/** Format: date-time */
readonly updatedAt?: string;
};
B2bComponentsShoppingListLineItemJsonApi: components$1["schemas"]["resource"] & {
/** Format: date-time */
readonly createdAt?: string;
id: string;
price?: components$1["schemas"]["Price"][];
productId?: string;
productVersionId?: string;
/** Format: int64 */
quantity: number;
relationships?: {
product?: {
data?: {
/** @example f5bf48aa40cad7891eb709fcf1fde128 */
id?: string;
/** @example product */
type?: string;
};
links?: {
/**
* Format: uri-reference
* @example /b2b-components-shopping-list-line-item/30d48c8d92682de24e11d3f72c5dd1ea/product
*/
related?: string;
};
};
};
/** Format: date-time */
readonly updatedAt?: string;
};
B2bEmployee: {
active?: boolean;
/** Format: date-time */
readonly createdAt?: string;
customFields?: GenericRecord$1;
email: string;
firstName: string;
id: string;
language?: components$1["schemas"]["Language"];
languageId: string;
lastName: string;
role?: components$1["schemas"]["B2bComponentsRole"];
status?: string;
/** Format: date-time */
readonly updatedAt?: string;
};
B2bOrderEmployee: {
/** Format: date-time */
readonly createdAt?: string;
firstName: string;
id?: string;
lastName: string;
/** Format: date-time */
readonly updatedAt?: string;
};
B2bPermission: {
/** Format: date-time */
readonly createdAt?: string;
dependencies?: string[];
group: string;
id: string;
name: string;
/** Format: date-time */
readonly updatedAt?: string;
};
BaseInteraction: {
/**
* The time in seconds how long the interaction should be stored in the database
* @default -1
*/
lifeTimeInSeconds?: number;
/**
* The time when the interaction was triggered
* @default now
*/
triggeredAt?: string;
};
BasePresentationSlideData: {
cmsPage?: components$1["schemas"]["CmsPage"];
extensions?: {
cmsPageRelation?: components$1["schemas"]["PresentationCmsPage"];
};
};
Breadcrumb: {
/** @enum {string} */
apiAlias: "breadcrumb";
categoryId: string;
name: string;
path: string;
seoUrls?: components$1["schemas"]["SeoUrl"][];
translated: {
categoryId: string;
customFields?: GenericRecord$1;
description?: string;
externalLink?: string;
internalLink?: string;
keywords?: string;
linkNewTab?: boolean;
/** @enum {string} */
linkType?: "category" | "external" | "landing_page" | "product";
metaDescription?: string;
metaTitle?: string;
name: string;
path: string;
slotConfig?: GenericRecord$1;
type: string;
};
/** @enum {string} */
type: "page" | "link" | "folder";
};
BreadcrumbCollection: components$1["schemas"]["Breadcrumb"][];
CalculatedPrice: {
/** @enum {string} */
apiAlias: "calculated_price";
calculatedTaxes: {
/** @enum {string} */
apiAlias: "cart_tax_calculated";
price: number;
tax: number;
taxRate: number;
}[];
hasRange: boolean;
listPrice: components$1["schemas"]["CartListPrice"] | null;
netPrice: number;
positionPrice: number;
quantity: number;
rawTotal: number;
referencePrice: components$1["schemas"]["CartPriceReference"] | null;
regulationPrice: {
/** @enum {string} */
apiAlias?: "cart_regulation_price";
price?: number;
} | null;
/** Currently active tax rules and/or rates */
taxRules: {
name?: string;
/** Format: float */
taxRate?: number;
}[];
/** @enum {string} */
taxStatus: "net" | "tax-free";
totalPrice: number;
unitPrice: number;
/** Format: ^[0-9a-f]{32}$ */
variantId?: string | null;
};
Cart: {
/** An affiliate tracking code */
affiliateCode?: string | null;
/** @enum {string} */
apiAlias: "cart";
/** A campaign tracking code */
campaignCode?: string | null;
/** A comment that can be added to the cart. */
customerComment?: string | null;
deliveries?: components$1["schemas"]["CartDelivery"][];
/** A list of all cart errors, such as insufficient stocks, invalid addresses or vouchers. */
errors?:
| components$1["schemas"]["CartError"][]
| {
[key: string]: {
code: number;
key: string;
level: number;
message: string;
messageKey: string;
};
};
/** All items within the cart */
lineItems?: components$1["schemas"]["LineItem"][];
modified?: boolean;
/** Name of the cart - for example `guest-cart` */
name?: string;
price: components$1["schemas"]["CalculatedPrice"];
/** Context token identifying the cart and the user session */
token?: string;
/** A list of all payment transactions associated with the current cart. */
transactions?: {
amount?: components$1["schemas"]["CalculatedPrice"];
paymentMethodId?: string;
}[];
};
CartDelivery: {
deliveryDate?: {
/** Format: date-time */
earliest?: string;
/** Format: date-time */
latest?: string;
};
location?: {
address?: components$1["schemas"]["CustomerAddress"];
/** @enum {string} */
apiAlias?: "cart_delivery_shipping_location";
country?: components$1["schemas"]["Country"];
state?: components$1["schemas"]["CountryState"];
};
positions?: components$1["schemas"]["CartDeliveryPosition"][];
shippingCosts?: components$1["schemas"]["CalculatedPrice"];
shippingMethod?: components$1["schemas"]["ShippingMethod"];
};
CartDeliveryInformation: {
/** @enum {string} */
apiAlias: "cart_delivery_information";
deliveryTime?: {
/** @enum {string} */
apiAlias?: "cart_delivery_time";
max?: number;
min?: number;
name?: string;
unit?: string;
};
freeDelivery?: boolean;
height?: number;
length?: number;
restockTime?: number;
stock?: number;
weight?: number;
width?: number;
};
CartDeliveryPosition: {
deliveryDate?: {
/** Format: date-time */
earliest?: string;
/** Format: date-time */
latest?: string;
};
identifier?: string;
lineItem?: components$1["schemas"]["LineItem"];
price?: components$1["schemas"]["CalculatedPrice"];
};
CartError: {
key: string;
/**
* * `0` - notice,
* * `10` - warning,
* * `20` - error
* @enum {number}
*/
level: 0 | 10 | 20;
message: string;
messageKey: string;
};
CartItems: {
items: components$1["schemas"]["LineItem"][];
};
CartListPrice: {
/** @enum {string} */
apiAlias: "cart_list_price";
discount?: number;
percentage?: number;
price?: number;
};
CartPriceQuantity: {
/** @enum {string} */
apiAlias: "cart_price_quantity";
isCalculated?: boolean;
listPrice?: components$1["schemas"]["CartListPrice"];
price?: number;
quantity?: number;
regulationPrice?: {
/** Format: float */
price?: number;
};
taxRules?: {
name?: string;
/** Format: float */
taxRate?: number;
}[];
type?: string;
};
CartPriceReference: {
/** @enum {string} */
apiAlias: "cart_price_reference";
hasRange: boolean;
listPrice: components$1["schemas"]["CartListPrice"] | null;
price?: number;
purchaseUnit?: number;
referenceUnit?: number;
regulationPrice: {
/** @enum {string} */
apiAlias?: "cart_regulation_price";
price?: number;
} | null;
unitName: string;
/** Format: ^[0-9a-f]{32}$ */
variantId?: string | null;
};
Category: {
active?: boolean;
afterCategoryId?: string;
afterCategoryVersionId?: string;
/** @enum {string} */
apiAlias: "category";
breadcrumb: string[];
/** Format: int64 */
readonly childCount: number;
children: components$1["schemas"]["Category"][];
cmsPage?: components$1["schemas"]["CmsPage"];
cmsPageId?: string;
/** Runtime field, cannot be used as part of the criteria. */
cmsPageIdSwitched?: boolean;
cmsPageVersionId?: string;
/** Format: date-time */
readonly createdAt?: string;
customEntityTypeId?: string;
customFields?: GenericRecord$1;
description?: string;
displayNestedProducts?: boolean;
externalLink?: string;
id: string;
internalLink?: string;
keywords?: string;
/** Format: int64 */
readonly level?: number;
linkNewTab?: boolean;
linkType?: string;
media?: components$1["schemas"]["Media"];
mediaId?: string;
metaDescription?: string;
metaTitle?: string;
name: string;
parent?: components$1["schemas"]["Category"];
parentId?: string;
parentVersionId?: string;
readonly path?: string;
productAssignmentType?: string;
seoUrls?: components$1["schemas"]["SeoUrl"][];
tags?: components$1["schemas"]["Tag"][];
translated: {
afterCategoryId: string;
afterCategoryVersionId: string;
breadcrumb: string[];
cmsPageId: string;
cmsPageVersionId: string;
customEntityTypeId: string;
description: string;
externalLink: string;
internalLink: string;
keywords: string;
linkType: string;
mediaId: string;
metaDescription: string;
metaTitle: string;
name: string;
parentId: string;
parentVersionId: string;
path: string;
productAssignmentType: string;
type: string;
versionId: string;
};
/** @enum {string} */
type: "page" | "link";
/** Format: date-time */
readonly updatedAt?: string;
versionId?: string;
visible?: boolean;
/**
* Format: int64
* Runtime field, cannot be used as part of the criteria.
*/
visibleChildCount?: number;
};
CategoryJsonApi: components$1["schemas"]["resource"] & {
active?: boolean;
afterCategoryId?: string;
afterCategoryVersionId?: string;
readonly breadcrumb?: GenericRecord$1[];
/** Format: int64 */
readonly childCount?: number;
cmsPageId?: string;
/** Runtime field, cannot be used as part of the criteria. */
cmsPageIdSwitched?: boolean;
cmsPageVersionId?: string;
/** Format: date-time */
readonly createdAt?: string;
customEntityTypeId?: string;
customFields?: GenericRecord$1;
description?: string;
displayNestedProducts?: boolean;
externalLink?: string;
id: string;
internalLink?: string;
keywords?: string;
/** Format: int64 */
readonly level?: number;
linkNewTab?: boolean;
linkType?: string;
mediaId?: string;
metaDescription?: string;
metaTitle?: string;
name: string;
parentId?: string;
parentVersionId?: string;
readonly path?: string;
productAssignmentType?: string;
relationships?: {
children?: {
data?: {
/** @example 268184c12df027f536154d099d497b31 */
id?: string;
/** @example category */
type?: string;
}[];
links?: {
/**
* Format: uri-reference
* @example /category/3adbdb3ac060038aa0e6e6c138ef9873/children
*/
related?: string;
};
};
cmsPage?: {
data?: {
/** @example 7b1460918b1abb93311108f3dc021c9b */
id?: string;
/** @example cms_page */
type?: string;
};
links?: {
/**
* Format: uri-reference
* @example /category/3adbdb3ac060038aa0e6e6c138ef9873/cmsPage
*/
related?: string;
};
};
media?: {
data?: {
/** @example 62933a2951ef01f4eafd9bdf4d3cd2f0 */
id?: string;
/** @example media */
type?: string;
};
links?: {
/**
* Format: uri-reference
* @example /category/3adbdb3ac060038aa0e6e6c138ef9873/media
*/
related?: string;
};
};
parent?: {
data?: {
/** @example d0e45878043844ffc41aac437e86b602 */
id?: string;
/** @example category */
type?: string;
};
links?: {
/**
* Format: uri-reference
* @example /category/3adbdb3ac060038aa0e6e6c138ef9873/parent
*/
related?: string;
};
};
seoUrls?: {
data?: {
/** @example 5321b5a71127b8b98cdd4b068ad56c4c */
id?: string;
/** @example seo_url */
type?: string;
}[];
links?: {
/**
* Format: uri-reference
* @example /category/3adbdb3ac060038aa0e6e6c138ef9873/seoUrls
*/
related?: string;
};
};
tags?: {
data?: {
/** @example d57ac45256849d9b13e2422d91580fb9 */
id?: string;
/** @example tag */
type?: string;
}[];
links?: {
/**
* Format: uri-reference
* @example /category/3adbdb3ac060038aa0e6e6c138ef9873/tags
*/
related?: string;
};
};
};
translated: {
afterCategoryId: string;
afterCategoryVersionId: string;
cmsPageId: string;
cmsPageVersionId: string;
customEntityTypeId: string;
description: string;
externalLink: string;
internalLink: string;
keywords: string;
linkType: string;
mediaId: string;
metaDescription: string;
metaTitle: string;
name: string;
parentId: string;
parentVersionId: string;
path: string;
productAssignmentType: string;
type: string;
versionId: string;
};
type?: string;
/** Format: date-time */
readonly updatedAt?: string;
versionId?: string;
visible?: boolean;
/**
* Format: int64
* Runtime field, cannot be used as part of the criteria.
*/
visibleChildCount?: number;
};
ClientPresentationStateResponse: {
stateForAll?: components$1["schemas"]["StateForAll"];
stateForClients?: components$1["schemas"]["StateForClients"];
};
CmsBlock: {
/** @enum {string} */
apiAlias: "cms_block";
backgroundColor?: string;
backgroundMedia?: components$1["schemas"]["Media"];
backgroundMediaId?: string;
backgroundMediaMode?: string;
cmsSectionVersionId?: string;
/** Format: date-time */
readonly createdAt?: string;
cssClass?: string;
customFields?: GenericRecord$1;
extensions?: {
swagCmsExtensionsBlockRule?: {
data?: {
/** @example c426e9e5d9031b933f89682d49bb02b1 */
id?: string;
/** @example swag_cms_extensions_block_rule */
type?: string;
};
links?: {
/**
* Format: uri-reference
* @example /cms-block/9c16ffe823ddccc710bfb336c2ef30b6/swagCmsExtensionsBlockRule
*/
related?: string;
};
};
swagCmsExtensionsQuickview?: {
data?: {
/** @example fae098a43df8714eda5249176ffcf26c */
id?: string;
/** @example swag_cms_extensions_quickview */
type?: string;
};
links?: {
/**
* Format: uri-reference
* @example /cms-block/9c16ffe823ddccc710bfb336c2ef30b6/swagCmsExtensionsQuickview
*/
related?: string;
};
};
};
id?: string;
marginBottom?: string;
marginLeft?: string;
marginRight?: string;
marginTop?: string;
name?: string;
/** Format: int64 */
position: number;
sectionId: string;
sectionPosition?: string;
slots: components$1["schemas"]["CmsSlot"][];
type: string;
/** Format: date-time */
readonly updatedAt?: string;
versionId?: string;
visibility?: {
desktop?: boolean;
mobile?: boolean;
tablet?: boolean;
};
};
CmsPage: {
/** @enum {string} */
apiAlias: "cms_page";
config?: {
backgroundColor?: string;
};
/** Format: date-time */
readonly createdAt?: string;
cssClass?: string;
customFields?: GenericRecord$1;
entity?: string;
extensions?: {
swagCmsExtensionsScrollNavigationPageSettings?: {
data?: {
/** @example 8b835206d09f3dec1b733f6a78c7ba33 */
id?: string;
/** @example swag_cms_extensions_scroll_navigation_page_settings */
type?: string;
};
links?: {
/**
* Format: uri-reference
* @example /cms-page/64bf107168bcd03626208c1764ce6890/swagCmsExtensionsScrollNavigationPageSettings
*/
related?: string;
};
};
};
id: string;
landingPages?: components$1["schemas"]["LandingPage"][];
name?: string;
previewMedia?: components$1["schemas"]["Media"];
previewMediaId?: string;
sections: components$1["schemas"]["CmsSection"][];
translated: {
cssClass: string;
entity: string;
name: string;
previewMediaId: string;
type: string;
versionId: string;
};
type: string;
/** Format: date-time */
readonly updatedAt?: string;
versionId?: string;
};
CmsPageActivity: {
/** Format: date-time */
readonly createdAt?: string;
id?: string;
/** Format: date-time */
readonly updatedAt?: string;
};
CmsPageDraft: {
/** Format: date-time */
readonly createdAt?: string;
id?: string;
/** Format: date-time */
readonly updatedAt?: string;
};
CmsSection: {
/** @enum {string} */
apiAlias: "cms_section";
backgroundColor?: string;
backgroundMedia?: components$1["schemas"]["Media"];
backgroundMediaId?: string;
backgroundMediaMode?: string;
blocks: components$1["schemas"]["CmsBlock"][];
cmsPageVersionId?: string;
/** Format: date-time */
readonly createdAt?: string;
cssClass?: string;
customFields?: GenericRecord$1;
extensions?: {
swagCmsExtensionsScrollNavigation?: {
data?: {
/** @example 425b8d6ec722d74191c6d39370af19dc */
id?: string;
/** @example swag_cms_extensions_scroll_navigation */
type?: string;
};
links?: {
/**
* Format: uri-reference
* @example /cms-section/d08def49fa8924d6f4a32bdb448d5fba/swagCmsExtensionsScrollNavigation
*/
related?: string;
};
};
};
id?: string;
mobileBehavior?: string;
name?: string;
page?: components$1["schemas"]["CmsPage"];
pageId: string;
/** Format: int64 */
position: number;
sizingMode?: string;
/** @enum {string} */
type: "default" | "sidebar";
/** Format: date-time */
readonly updatedAt?: string;
visibility?: {
desktop?: boolean;
mobile?: boolean;
tablet?: boolean;
};
};
CmsSlot: {
/** @enum {string} */
apiAlias: "cms_slot";
block?: components$1["schemas"]["CmsBlock"];
blockId: string;
cmsBlockVersionId?: string;
/** Format: date-time */
readonly createdAt?: string;
customFields?: {
_uniqueIdentifier?: string;
};
extensions?: {
swagCmsExtensionsForm?: {
data?: {
/** @example 0654ad514da002e9d77fa24ee33acd95 */
id?: string;
/** @example swag_cms_extensions_form */
type?: string;
};
links?: {
/**
* Format: uri-reference
* @example /cms-slot/ac5ca6960137c6b8a97c90c11b71d4bb/swagCmsExtensionsForm
*/
related?: string;
};
};
};
fieldConfig?: GenericRecord$1;
id: string;
locked?: boolean;
slot: string;
translated: {
blockId: string;
cmsBlockVersionId: string;
config?: {
content?: {
value?: string;
};
};
slot: string;
type: string;
versionId: string;
};
type: string;
/** Format: date-time */
readonly updatedAt?: string;
versionId?: string;
};
Country: {
active?: boolean;
addressFormat: GenericRecord$1;
advancedPostalCodePattern?: string;
checkAdvancedPostalCodePattern?: boolean;
checkPostalCodePattern?: boolean;
checkVatIdPattern?: boolean;
companyTax?: {
/** Format: float */
amount: number;
currencyId: string;
enabled: boolean;
};
/** Format: date-time */
readonly createdAt?: string;
customerTax?: {
/** Format: float */
amount: number;
currencyId: string;
enabled: boolean;
};
customFields?: GenericRecord$1;
defaultPostalCodePattern?: string;
displayStateInRegistration?: boolean;
forceStateInRegistration?: boolean;
id: string;
isEu?: boolean;
iso?: string;
iso3?: string;
name: string;
/** Format: int64 */
position?: number;
postalCodeRequired?: boolean;
shippingAvailable?: boolean;
states?: components$1["schemas"]["CountryState"][];
translated: {
advancedPostalCodePattern: string;
defaultPostalCodePattern: string;
iso: string;
iso3: string;
name: string;
vatIdPattern: string;
};
/** Format: date-time */
readonly updatedAt?: string;
vatIdPattern?: string;
vatIdRequired?: boolean;
};
CountryJsonApi: components$1["schemas"]["resource"] & {
active?: boolean;
addressFormat: GenericRecord$1;
advancedPostalCodePattern?: string;
checkAdvancedPostalCodePattern?: boolean;
checkPostalCodePattern?: boolean;
checkVatIdPattern?: boolean;
companyTax?: {
/** Format: float */
amount: number;
currencyId: string;
enabled: boolean;
};
/** Format: date-time */
readonly createdAt?: string;
customerTax?: {
/** Format: float */
amount: number;
currencyId: string;
enabled: boolean;
};
customFields?: GenericRecord$1;
defaultPostalCodePattern?: string;
displayStateInRegistration?: boolean;
forceStateInRegistration?: boolean;
id: string;
isEu?: boolean;
iso?: string;
iso3?: string;
name: string;
/** Format: int64 */
position?: number;
postalCodeRequired?: boolean;
relationships?: {
states?: {
data?: {
/** @example 34d955a0df5f7af9c9b4e4dccb3c3564 */
id?: string;
/** @example country_state */
type?: string;
}[];
links?: {
/**
* Format: uri-reference
* @example /country/59716c97497eb9694541f7c3d37b1a4d/states
*/
related?: string;
};
};
};
shippingAvailable?: boolean;
translated: {
advancedPostalCodePattern: string;
defaultPostalCodePattern: string;
iso: string;
iso3: string;
name: string;
vatIdPattern: string;
};
/** Format: date-time */
readonly updatedAt?: string;
vatIdPattern?: string;
vatIdRequired?: boolean;
};
CountryState: {
active?: boolean;
countryId: string;
/** Format: date-time */
readonly createdAt?: string;
customFields?: GenericRecord$1;
id: string;
name: string;
/** Format: int64 */
position?: number;
shortCode: string;
translated: {
countryId: string;
name: string;
shortCode: string;
};
/** Format: date-time */
readonly updatedAt?: string;
};
CountryStateJsonApi: components$1["schemas"]["resource"] & {
active?: boolean;
countryId: string;
/** Format: date-time */
readonly createdAt?: string;
customFields?: GenericRecord$1;
id: string;
name: string;
/** Format: int64 */
position?: number;
shortCode: string;
translated: {
countryId: string;
name: string;
shortCode: string;
};
/** Format: date-time */
readonly updatedAt?: string;
};
CreateAppointmentRequestBody: {
/** The company name of the requester */
companyName?: string;
/**
* Format: email
* The email address of the requester
*/
emailAddress: string;
/** The first name of the requester */
firstName: string;
/** The last name of the requester */
lastName: string;
/** The message of the appointment */
message?: string;
/** The phone number of the requester */
phoneNumber?: string;
/** The id of the salutation */
salutationId: string;
/** The subject of the appointment */
subject: string;
};
CreateInteractionRequestBody: components$1["schemas"]["DynamicInteractionBody"];
Criteria: {
aggregations?: components$1["schemas"]["Aggregation"][];
associations?: components$1["schemas"]["Association"];
/** Fields which should be returned in the search result. */
fields?: string[];
/** List of filters to restrict the search result. For more information, see [Search Queries > Filter](https://shopware.stoplight.io/docs/store-api/docs/concepts/search-queries.md#filter) */
filter?: (
| components$1["schemas"]["SimpleFilter"]
| components$1["schemas"]["EqualsFilter"]
| components$1["schemas"]["MultiNotFilter"]
| components$1["schemas"]["RangeFilter"]
)[];
/** Perform groupings over certain fields */
grouping?: string[];
/** List of ids to search for */
ids?: string[];
includes?: components$1["schemas"]["Includes"];
/** Number of items per result page */
limit?: number;
/** Search result page */
page?: number;
/** Filters that applied without affecting aggregations. For more information, see [Search Queries > Post Filter](https://shopware.stoplight.io/docs/store-api/docs/concepts/search-queries.md#post-filter) */
"post-filter"?: (
| components$1["schemas"]["SimpleFilter"]
| components$1["schemas"]["EqualsFilter"]
| components$1["schemas"]["MultiNotFilter"]
| components$1["schemas"]["RangeFilter"]
)[];
/** The query string to search for */
query?: string;
/** Sorting in the search result. */
sort?: components$1["schemas"]["Sort"][];
/** Search term */
term?: string;
"total-count-mode"?: components$1["schemas"]["TotalCountMode"];
};
CrossSellingElement: {
/** @enum {string} */
apiAlias: "cross_selling_element";
crossSelling: components$1["schemas"]["ProductCrossSelling"];
products: components$1["schemas"]["Product"][];
/** Format: uuid */
streamId?: string;
/** Format: int32 */
total: number;
};
CrossSellingElementCollection: components$1["schemas"]["CrossSellingElement"][];
Currency: {
/** Format: date-time */
readonly createdAt?: string;
customFields?: GenericRecord$1;
/** Format: float */
factor: number;
id: string;
isoCode: string;
/** Runtime field, cannot be used as part of the criteria. */
isSystemDefault?: boolean;
itemRounding: {
/** Format: int64 */
decimals: number;
/** Format: float */
interval: number;
roundForNet: boolean;
};
name: string;
/** Format: int64 */
position?: number;
shortName: string;
symbol: string;
/** Format: float */
taxFreeFrom?: number;
totalRounding: {
/** Format: int64 */
decimals: number;
/** Format: float */
interval: number;
roundForNet: boolean;
};
translated: {
isoCode: string;
name: string;
shortName: string;
symbol: string;
};
/** Format: date-time */
readonly updatedAt?: string;
};
CurrencyCountryRounding: {
/** Format: date-time */
readonly createdAt?: string;
id?: string;
/** Format: date-time */
readonly updatedAt?: string;
};
CurrencyJsonApi: components$1["schemas"]["resource"] & {
/** Format: date-time */
readonly createdAt?: string;
customFields?: GenericRecord$1;
/** Format: float */
factor: number;
id: string;
isoCode: string;
/** Runtime field, cannot be used as part of the criteria. */
isSystemDefault?: boolean;
itemRounding: {
/** Format: int64 */
decimals: number;
/** Format: float */
interval: number;
roundForNet: boolean;
};
name: string;
/** Format: int64 */
position?: number;
shortName: string;
symbol: string;
/** Format: float */
taxFreeFrom?: number;
totalRounding: {
/** Format: int64 */
decimals: number;
/** Format: float */
interval: number;
roundForNet: boolean;
};
translated: {
isoCode: string;
name: string;
shortName: string;
symbol: string;
};
/** Format: date-time */
readonly updatedAt?: string;
};
CustomEntity: {
/** Format: date-time */
readonly createdAt?: string;
id?: string;
/** Format: date-time */
readonly updatedAt?: string;
};
CustomField: {
/** Format: date-time */
readonly createdAt?: string;
id?: string;
/** Format: date-time */
readonly updatedAt?: string;
};
CustomFieldSet: {
/** Format: date-time */
readonly createdAt?: string;
id?: string;
/** Format: date-time */
readonly updatedAt?: string;
};
CustomFieldSetRelation: {
/** Format: date-time */
readonly createdAt?: string;
id?: string;
/** Format: date-time */
readonly updatedAt?: string;
};
CustomPrice: {
/** Format: date-time */
readonly createdAt?: string;
customer?: components$1["schemas"]["Customer"];
customerGroup?: components$1["schemas"]["CustomerGroup"];
customerGroupId?: string;
customerId?: string;
id: string;
price: GenericRecord$1;
product?: components$1["schemas"]["Product"];
productId: string;
productVersionId?: string;
/** Format: date-time */
readonly updatedAt?: string;
};
Customer: {
active?: boolean;
activeBillingAddress: components$1["schemas"]["CustomerAddress"];
activeShippingAddress: components$1["schemas"]["CustomerAddress"];
addresses?: components$1["schemas"]["CustomerAddress"][];
affiliateCode?: string;
/** @enum {string} */
apiAlias: "customer";
birthday?: string;
campaignCode?: string;
/** Format: date-time */
readonly createdAt?: string;
createdById?: string;
customerNumber: string;
customFields?: GenericRecord$1;
defaultBillingAddress?: components$1["schemas"]["CustomerAddress"];
defaultBillingAddressId: string;
defaultPaymentMethod?: components$1["schemas"]["PaymentMethod"];
defaultPaymentMethodId: string;
defaultShippingAddress?: components$1["schemas"]["CustomerAddress"];
defaultShippingAddressId: string;
/** Format: date-time */
doubleOptInConfirmDate?: string;
/** Format: date-time */
doubleOptInEmailSentDate?: string;
doubleOptInRegistration?: boolean;
email: string;
extensions?: {
specificFeatures?: {
data?: {
/** @example 5cfb6fcb7542e25892e1a35cd6a06c54 */
id?: string;
/** @example customer_specific_features */
type?: string;
};
links?: {
/**
* Format: uri-reference
* @example /customer/ce26601dac0dea138b7295f02b7620a7/specificFeatures
*/
related?: string;
};
};
};
/** Format: date-time */
firstLogin?: string;
firstName: string;
group?: components$1["schemas"]["CustomerGroup"];
groupId: string;
guest?: boolean;
hash?: string;
id: string;
language?: components$1["schemas"]["Language"];
languageId: string;
/** Format: date-time */
lastLogin?: string;
lastName: string;
/** Format: date-time */
readonly lastOrderDate?: string;
lastPaymentMethod?: components$1["schemas"]["PaymentMethod"];
lastPaymentMethodId?: string;
/** Format: int64 */
readonly orderCount?: number;
/** Format: float */
readonly orderTotalAmount?: number;
/** Format: int64 */
readonly reviewCount?: number;
salesC