|
- # Copyright © Magento, Inc. All rights reserved.
- # See COPYING.txt for license details.
-
- type Query {
- wishlist: WishlistOutput @resolver(class: "\\Magento\\WishlistGraphQl\\Model\\Resolver\\WishlistResolver") @deprecated(reason: "Moved under `Customer.wishlist`.") @doc(description: "Return the contents of a customer's wish list.") @cache(cacheable: false)
- }
-
- type Customer {
- wishlists(
- pageSize: Int = 20 @doc(description: "Specifies the maximum number of results to return at once. This attribute is optional."),
- currentPage: Int = 1 @doc(description: "Specifies which page of results to return. The default value is 1.")
- ): [Wishlist!]! @doc(description: "An array of wishlists. In Magento Open Source, customers are limited to one wish list. The number of wish lists is configurable for Adobe Commerce.") @resolver(class:"\\Magento\\WishlistGraphQl\\Model\\Resolver\\CustomerWishlists")
- wishlist: Wishlist! @deprecated(reason: "Use `Customer.wishlists` or `Customer.wishlist_v2` instead.") @resolver(class:"\\Magento\\WishlistGraphQl\\Model\\Resolver\\CustomerWishlistResolver") @doc(description: "Return a customer's wish lists.") @cache(cacheable: false)
- wishlist_v2(id: ID!): Wishlist @doc(description: "Retrieve the wish list identified by the unique ID for a `Wishlist` object.") @resolver(class: "\\Magento\\WishlistGraphQl\\Model\\Resolver\\WishlistById")
- }
-
- type WishlistOutput @doc(description: "Deprecated: Use the `Wishlist` type instead.") {
- items: [WishlistItem] @deprecated(reason: "Use the `Wishlist.items` field instead.") @resolver(class: "\\Magento\\WishlistGraphQl\\Model\\Resolver\\WishlistItemsResolver") @doc(description: "An array of items in the customer's wish list"),
- items_count: Int @deprecated(reason: "Use the `Wishlist.items_count` field instead.") @doc(description: "The number of items in the wish list."),
- name: String @deprecated(reason: "This field is related to Commerce functionality and is always `null` in Open Source.") @doc(description: "When multiple wish lists are enabled, the name the customer assigns to the wishlist."),
- sharing_code: String @deprecated(reason: "Use the `Wishlist.sharing_code` field instead.") @doc(description: "An encrypted code that links to the wish list."),
- updated_at: String @deprecated(reason: "Use the `Wishlist.updated_at` field instead.") @doc(description: "The time of the last modification to the wish list.")
- }
-
- type Wishlist @doc(description: "Contains a customer wish list.") {
- id: ID @doc(description: "The unique ID for a `Wishlist` object.")
- items: [WishlistItem] @resolver(class: "\\Magento\\WishlistGraphQl\\Model\\Resolver\\WishlistItemsResolver") @deprecated(reason: "Use the `items_v2` field instead.")
- items_v2(
- currentPage: Int = 1,
- pageSize: Int = 20
- ): WishlistItems @resolver(class: "\\Magento\\WishlistGraphQl\\Model\\Resolver\\WishlistItems") @doc(description: "An array of items in the customer's wish list.")
- items_count: Int @doc(description: "The number of items in the wish list.")
- sharing_code: String @doc(description: "An encrypted code that Magento uses to link to the wish list.")
- updated_at: String @doc(description: "The time of the last modification to the wish list.")
- }
-
- interface WishlistItemInterface @typeResolver(class: "Magento\\WishlistGraphQl\\Model\\Resolver\\Type\\WishlistItemType") @doc(description: "The interface for wish list items."){
- id: ID! @doc(description: "The unique ID for a `WishlistItemInterface` object.")
- quantity: Float! @doc(description: "The quantity of this wish list item.")
- description: String @doc(description: "The description of the item.")
- added_at: String! @doc(description: "The date and time the item was added to the wish list.")
- product: ProductInterface @doc(description: "Product details of the wish list item.") @resolver(class: "\\Magento\\WishlistGraphQl\\Model\\Resolver\\ProductResolver")
- customizable_options: [SelectedCustomizableOption]! @resolver(class: "Magento\\WishlistGraphQl\\Model\\Resolver\\CustomizableOptions") @doc(description: "Custom options selected for the wish list item.")
- }
-
- type WishlistItems @doc(description: "Contains an array of items in a wish list.") {
- items: [WishlistItemInterface]! @doc(description: "A list of items in the wish list.")
- page_info: SearchResultPageInfo @doc(description: "Contains pagination metadata.")
- }
-
- type WishlistItem @doc(description: "Contains details about a wish list item.") {
- id: Int @doc(description: "The unique ID for a `WishlistItem` object.")
- qty: Float @doc(description: "The quantity of this wish list item"),
- description: String @doc(description: "The customer's comment about this item."),
- added_at: String @doc(description: "The time when the customer added the item to the wish list."),
- product: ProductInterface @resolver(class: "\\Magento\\WishlistGraphQl\\Model\\Resolver\\ProductResolver") @doc(description: "Details about the wish list item.")
- }
-
- type Mutation {
- addProductsToWishlist(wishlistId: ID! @doc(description: "The ID of a wish list."), wishlistItems: [WishlistItemInput!]! @doc(description: "An array of products to add to the wish list.")): AddProductsToWishlistOutput @doc(description: "Add one or more products to the specified wish list. This mutation supports all product types.") @resolver(class: "\\Magento\\WishlistGraphQl\\Model\\Resolver\\AddProductsToWishlist")
- removeProductsFromWishlist(wishlistId: ID! @doc(description: "The ID of a wish list."), wishlistItemsIds: [ID!]! @doc(description: "An array of item IDs representing products to be removed.")): RemoveProductsFromWishlistOutput @doc(description: "Remove one or more products from the specified wish list.") @resolver(class: "\\Magento\\WishlistGraphQl\\Model\\Resolver\\RemoveProductsFromWishlist")
- updateProductsInWishlist(wishlistId: ID! @doc(description: "The ID of a wish list."), wishlistItems: [WishlistItemUpdateInput!]! @doc(description: "An array of items to be updated.")): UpdateProductsInWishlistOutput @doc(description: "Update one or more products in the specified wish list.") @resolver(class: "\\Magento\\WishlistGraphQl\\Model\\Resolver\\UpdateProductsInWishlist")
- addWishlistItemsToCart(
- wishlistId: ID!, @doc(description: "The unique ID of the wish list")
- wishlistItemIds: [ID!] @doc(description: "An array of IDs representing products to be added to the cart. If no IDs are specified, all items in the wishlist will be added to the cart")
- ): AddWishlistItemsToCartOutput @resolver(class: "Magento\\WishlistGraphQl\\Model\\Resolver\\Wishlist\\AddToCart") @doc(description: "Add items in the specified wishlist to the customer's cart.")
- }
-
- type AddWishlistItemsToCartOutput @doc(description: "Contains the resultant wish list and any error information.") {
- wishlist: Wishlist! @doc(description: "Contains the wish list with all items that were successfully added.")
- status: Boolean! @doc(description: "Indicates whether the attempt to add items to the customer's cart was successful.")
- add_wishlist_items_to_cart_user_errors: [WishlistCartUserInputError!]! @doc(description: "An array of errors encountered while adding products to the customer's cart.")
- }
-
- type WishlistCartUserInputError @doc(description: "Contains details about errors encountered when a customer added wish list items to the cart.") {
- message: String! @doc(description: "A localized error message.")
- code: WishlistCartUserInputErrorType! @doc(description: "An error code that describes the error encountered.")
- wishlistId: ID! @doc(description: "The unique ID of the `Wishlist` object containing an error.")
- wishlistItemId: ID! @doc(description: "The unique ID of the wish list item containing an error.")
- }
-
- enum WishlistCartUserInputErrorType @doc(description: "A list of possible error types.") {
- PRODUCT_NOT_FOUND
- NOT_SALABLE
- INSUFFICIENT_STOCK
- UNDEFINED
- }
-
- input WishlistItemInput @doc(description: "Defines the items to add to a wish list.") {
- sku: String! @doc(description: "The SKU of the product to add. For complex product types, specify the child product SKU.")
- quantity: Float! @doc(description: "The amount or number of items to add.")
- parent_sku: String @doc(description: "For complex product types, the SKU of the parent product.")
- selected_options: [ID!] @doc(description: "An array of strings corresponding to options the customer selected.")
- entered_options: [EnteredOptionInput!] @doc(description: "An array of options that the customer entered.")
- }
-
- type AddProductsToWishlistOutput @doc(description: "Contains the customer's wish list and any errors encountered.") {
- wishlist: Wishlist! @doc(description: "Contains the wish list with all items that were successfully added.")
- user_errors:[WishListUserInputError!]! @doc(description: "An array of errors encountered while adding products to a wish list.")
- }
-
- type RemoveProductsFromWishlistOutput @doc(description: "Contains the customer's wish list and any errors encountered.") {
- wishlist: Wishlist! @doc(description: "Contains the wish list with after items were successfully deleted.")
- user_errors:[WishListUserInputError!]! @doc(description:"An array of errors encountered while deleting products from a wish list.")
- }
-
- input WishlistItemUpdateInput @doc(description: "Defines updates to items in a wish list.") {
- wishlist_item_id: ID! @doc(description: "The unique ID for a `WishlistItemInterface` object.")
- quantity: Float @doc(description: "The new amount or number of this item.")
- description: String @doc(description: "Customer-entered comments about the item.")
- selected_options: [ID!] @doc(description: "An array of strings corresponding to options the customer selected.")
- entered_options: [EnteredOptionInput!] @doc(description: "An array of options that the customer entered.")
- }
-
- type UpdateProductsInWishlistOutput @doc(description: "Contains the customer's wish list and any errors encountered.") {
- wishlist: Wishlist! @doc(description: "Contains the wish list with all items that were successfully updated.")
- user_errors: [WishListUserInputError!]! @doc(description:"An array of errors encountered while updating products in a wish list.")
- }
-
- type WishListUserInputError @doc(description:"An error encountered while performing operations with WishList.") {
- message: String! @doc(description: "A localized error message.")
- code: WishListUserInputErrorType! @doc(description: "A wish list-specific error code.")
- }
-
- enum WishListUserInputErrorType @doc(description: "A list of possible error types.") {
- PRODUCT_NOT_FOUND
- UNDEFINED
- }
-
- type StoreConfig {
- magento_wishlist_general_is_enabled: String @doc(description: "Indicates whether wishlists are enabled (1) or disabled (0).")
- }
|